如何从命令行编译和运行 Java 应用程序

JavaJavaBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

Java 是一种强大的编程语言,广泛应用于从企业软件到移动应用等各种领域。在本教程中,我们将探讨从命令行编译和运行 Java 应用程序的过程,这是任何 Java 开发者都必须掌握的关键技能。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java/BasicSyntaxGroup -.-> java/identifier("Identifier") java/BasicSyntaxGroup -.-> java/output("Output") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/user_input("User Input") subgraph Lab Skills java/identifier -.-> lab-413959{{"如何从命令行编译和运行 Java 应用程序"}} java/output -.-> lab-413959{{"如何从命令行编译和运行 Java 应用程序"}} java/user_input -.-> lab-413959{{"如何从命令行编译和运行 Java 应用程序"}} end

Java 编程简介

Java 是一种广受欢迎且被广泛使用的编程语言,它于 1995 年由 Sun Microsystems 首次发布。它是一种面向对象、基于类的语言,旨在实现平台无关性,这意味着 Java 程序可以在包括 Windows、macOS 和 Linux 在内的各种操作系统上运行。

Java 的关键特性之一是其“一次编写,到处运行”(WORA)理念,这意味着 Java 程序可以被编译成与平台无关的字节码,该字节码可以在任何 Java 虚拟机(JVM)上执行。这使得 Java 成为一种高度可移植且通用的语言,因为开发者只需编写一次代码,就可以在多个平台上部署,而无需重写或重新编译代码。

Java 被广泛应用于各种领域,从桌面应用程序、Web 应用程序到移动应用和企业级软件。它在企业软件开发社区中特别受欢迎,用于构建大规模、关键任务的应用程序。

要开始进行 Java 编程,你需要在系统上安装 Java 开发工具包(JDK)。JDK 包括用于将 Java 源代码转换为字节码的 Java 编译器,以及用于执行 Java 程序的 Java 运行时环境(JRE)。

安装好 JDK 后,你可以使用文本编辑器或诸如 Eclipse 或 IntelliJ IDEA 之类的集成开发环境(IDE)来编写和编译 Java 代码。

graph TD A[Java Development Kit (JDK)] --> B[Java Compiler] A --> C[Java Runtime Environment (JRE)] B --> D[Java Bytecode] D --> C[Java Runtime Environment (JRE)] C --> E[Java Application]

在下一节中,我们将探讨如何使用命令行编译 Java 源代码。

编译 Java 源代码

要编译 Java 源代码,你可以使用 Java 开发工具包(JDK)中包含的 Java 编译器。Java 编译器是一个命令行工具,它将 Java 源代码转换为字节码,然后可以由 Java 运行时环境(JRE)执行。

编译单个 Java 文件

要编译单个 Java 文件,你可以使用 javac 命令,后跟 Java 文件的名称。例如,要编译名为 HelloWorld.java 的文件,你可以在终端中运行以下命令:

javac HelloWorld.java

这将在与源文件相同的目录中创建一个名为 HelloWorld.class 的已编译类文件。

编译多个 Java 文件

如果你的 Java 应用程序由多个源文件组成,你可以通过在 javac 命令后列出文件名来一次性编译它们。例如:

javac HelloWorld.java AnotherClass.java MyClass.java

这将编译所有三个 Java 文件并创建相应的类文件。

编译子目录中的 Java 文件

如果你的 Java 源文件按目录结构组织,你仍然可以使用 javac 命令编译它们。例如,如果你在子目录中有一个名为 com/example/MyClass.java 的文件,你可以使用以下命令编译它:

javac com/example/MyClass.java

这将在 com/example 目录中创建 MyClass.class 文件。

graph TD A[Java Source File] --> B[Java Compiler (javac)] B --> C[Java Bytecode (.class)]

在下一节中,我们将探讨如何从命令行运行 Java 应用程序。

运行 Java 应用程序

将 Java 源代码编译成字节码之后,你可以使用 java 命令来运行 Java 应用程序。java 命令用于启动 Java 虚拟机(JVM)并执行已编译的 Java 字节码。

运行单个 Java 类

要运行单个 Java 类,你可以使用 java 命令,后跟完全限定类名(如果适用,包括包名)。例如,要在默认包中运行名为 HelloWorld 的类,你可以使用以下命令:

java HelloWorld

如果 HelloWorld 类在名为 com.example 的包中,你可以使用以下命令:

java com.example.HelloWorld

使用命令行参数运行 Java 应用程序

你还可以通过在类名之后包含命令行参数来将其传递给 Java 应用程序。例如:

java HelloWorld John Doe

在你的 Java 代码中,你可以使用 main() 方法的 args 参数来访问这些命令行参数。

public static void main(String[] args) {
    System.out.println("Hello, " + args[0] + " " + args[1] + "!");
}

从 JAR 文件运行 Java 应用程序

如果你的 Java 应用程序被打包成一个 JAR(Java 归档)文件,你可以使用 java 命令并指定 JAR 文件来运行它。例如:

java -jar myapp.jar

这将启动 JVM 并执行 JAR 文件清单中指定的主类。

graph TD A[Java Bytecode (.class)] --> B[Java Virtual Machine (JVM)] B --> C[Java Application]

通过遵循这些步骤,无论你的项目有多复杂或源文件如何组织,你都可以成功地从命令行编译和运行 Java 应用程序。

总结

在本教程结束时,你将对如何从命令行编译和运行 Java 应用程序有扎实的理解。这些知识将使你有信心开发、测试和部署你的 Java 程序,为你成为一名 Java 程序员的旅程奠定基础。