插件窝 干货文章 linux java 编译命令是什么

linux java 编译命令是什么

编译 Java javac bash    来源:    2025-04-17

在 Linux 环境下编译 Java 程序的常用命令如下:


1. 基础编译命令

javac YourFile.java
  • 编译后会生成 YourFile.class 字节码文件。
  • 如果代码依赖其他库,需通过 -cp 指定类路径。

2. 指定输出目录

javac -d ./output/ YourFile.java
  • 将编译后的 .class 文件输出到 ./output/ 目录。

3. 编译多个文件

javac File1.java File2.java

或通配符编译当前目录所有 .java 文件:

javac *.java

4. 使用类路径(Classpath)

若依赖外部 JAR 包(如 lib.jar):

javac -cp .:/path/to/lib.jar YourFile.java
  • -cp 或 -classpath 指定依赖路径(多个路径用 : 分隔)。

5. 指定 Java 版本

javac -source 1.8 -target 1.8 YourFile.java
  • 确保代码与目标 JRE 版本兼容。

6. 编译整个目录结构

find . -name "*.java" > sources.txt
javac -d ./output @sources.txt
  • 递归编译所有子目录下的 Java 文件。

7. 运行编译后的程序

java -cp ./output YourMainClass
  • 注意:YourMainClass 是包含 main() 方法的类名(无需 .class 后缀)。

常见问题解决

  1. javac: command not found

    • 安装 JDK:
      bash sudo apt install openjdk-11-jdk # Ubuntu/Debian sudo yum install java-11-openjdk-devel # CentOS/RHEL
  2. 编码问题

    • 指定编码(如 UTF-8):
      bash javac -encoding UTF-8 YourFile.java
  3. 依赖问题

    • 使用构建工具(如 Maven/Gradle)管理复杂项目依赖。

推荐工具

  • Maven: mvn compile
  • Gradle: gradle build
  • 适合多模块项目,自动处理依赖和编译流程。