下面列出了開發人員需要掌握的五個比較有用的 Java 命令行工具,才能成為他們團隊的高效成員。
1. Java編譯器:javac
javac 實用程序是你可以在 JDK 的 bin 目錄中找到的最重要的命令行界面 (CLI) 工具。這是 Java 編譯器,無論你使用 Maven、Gradle、SpringSource IDE 還是 Jenkins CI,在編譯 Java 源代碼時都會使用這個 JDK 工具。
但是,如果所有流行的構建框架都只是抽象了它的使用,為什么開發人員需要了解 javac 命令行程序呢?好吧,當項目的構建和部署管道中出現難以診斷的問題時,故障排除從工具鏈中最基本的組件開始,而這通常是編譯代碼的地方。當構建橫向運行時,開發人員通常需要將所有花哨的打包和部署工具放在一邊,并恢復到首要原則。這意味著使用 JDK 的 javac 實用程序編譯代碼。
2. Java 分析器:javap
你可以將 Java 命令行工具 javap 視為對 javac 實用程序的補充。 當 javac 編譯代碼時,javap 實用程序反轉該編譯并提供有關已編譯類的信息,例如它聲明的變量類型,以及它提供的各種方法和 API。 javap JDK 工具不會將已編譯的類完全返回為其原始源代碼格式,但它確實提供了有關原始源代碼設計方式的見解。
javap命令行程序也可以用來查看用于創建類文件的編譯器版本,這對故障排除很有幫助。 此外,javap 工具可以向你顯示編譯器為類創建的字節碼,并提供有關組件如何執行其邏輯的見解。
3. Java 統計聚合器:jstat
你的應用程序是否遇到運行時問題?為什么不打開 jstat 實用程序?
兩個最常調整的 Java 虛擬機 (JVM) 參數是堆大小和 Java 運行時環境 (JRE) 的垃圾收集算法。這個統計監控 Java CLI 工具提供了類加載器指標、即時編譯器如何工作的見解,以及最重要的是,關于垃圾收集發生頻率的數據。有了這些統計數據,你就可以就如何配置 JVM 以獲得最佳性能做出明智的決定。
4.Java依賴管理器:jdeps
使用 Java 12,將不允許編譯任何引用內部 API 的代碼庫。在不久的將來,即使鏈接到引用內部 API 的已編譯組件也會觸發構建失敗。如果你想知道任何現有代碼是否使用或引用了內部 Java API,jdeps Java CLI 應用程序會告訴你。此外,如果它確實在你的源代碼中識別出對內部 API 的引用,它通常會提供有關更新的、更可取的 API 的建議,你可以使用它來替換壞的 API。
5. Java 歸檔實用程序:jar
創建壓縮歸檔文件并沒有什么特別神奇的地方,這是 Java jar 實用程序的主要用途。但是這個 Java 命令行工具還有其他一些有用的特性。除了能夠創建壓縮的 zip 文件外,jar 實用程序還可用于指定可執行或嵌入式 JAR 文件的入口點、配置在 JRE 上運行時使用的選項,甚至記錄 JAR 文件的內部內容。當你想將一個版本的代碼版本與另一個版本進行比較時,Jar 會很有用。當然,除了能夠壓縮文件之外,JDK 工具 jar 還可以用于提取歸檔文件的內容。
JDK 的 bin 目錄中還打包了許多其他有趣的 Java 命令行界面工具,研究它們并探索它們的實用程序符合每個 Java 開發人員的較大利益。但是這些前面提到的 Java 命令行工具——即 javac、javap、jstat、jdeps 和 jar——是認真的軟件開發人員需要知道的五個。
原文地址:https://www.toutiao.com/a7065859541023408670/