

每个开发人员都应该知道的 Java 命令行界面工具
source link: https://developer.51cto.com/article/702028.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

下面列出了开发人员需要掌握的五个比较有用的 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——是认真的软件开发人员需要知道的五个。




Recommend
-
123
-
113
[译] 每个人都应该知道的十个机器学习常识
-
7
每个开发人员都应该知道的 10 个 GitHub 仓库作者:Pawel翻译:
-
4
每个JavaScript开发人员都应该了解Unicode这个故事以一个自白开始:我在很长一段时间都害怕Unicode。每当一个编程任务需要Unicode知识时,我正在寻找一个可破解的解决方案,而没有详细了解...
-
5
Java 开发人员应该知道的五大 Spring Boot 特性-51CTO.COM Java 开发人员应该知道的五大 Spring Boot 特性 作者:文字代表述说 2022-04-30 08:58:00 您可能听说过 Spring Boot,它的神...
-
3
GitHub是web上托管软件项目的主导者。GitHub拥有超过2亿个公共存储库,为开发者提供了丰富的知识,包括开源项目、库、学习平台、面...
-
5
在 JavaScript 中,字符串是不可变的,可以帮助我们存储包含字符、数字和 Unicode 的文本。 此外,JavaScript 包含许多用于以各种方式创建和操作字符串的内置函数。
-
5
每位开发人员都应该知道的安全编码实践 译文 作者: ...
-
7
每个软件开发人员都应该知道的 22 个有效的 ChatGPT 提示 解道Jdon ...
-
7
在编程的海洋中冲浪时,我们通常会遇到许多冰山(即概念),这些冰山从外表上看非常渺小和基础,但实际上却非常巨大和深奥,纯函数就是其中之一。 定义简单地说,纯函数是函数式编程中的一个概念,它遵循以下两套规则: 确定性:
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK