在 Ubuntu 下编译多个 Java 文件,常见做法有以下几种,按使用频率从简单到规范说明:
javac 直接编译(最基础)假设有以下文件:
Main.java
A.java
B.java
直接编译:
javac *.java
运行:
java Main
javac Main.java A.java B.java
目录结构:
src/
├── Main.java
├── util/
│ └── Tool.java
编译:
javac -d out src/Main.java src/util/Tool.java
运行:
java -cp out Main
说明:
-d out:指定编译输出目录-cp out:指定 classpathjavac -d out $(find src -name "*.java")
或:
javac -d out src/**/*.java
(需要 bash 开启 globstar,默认通常支持)
jar 打包运行(规范做法)javac -d out src/**/*.java
jar cfe app.jar Main -C out .
Main 是主类app.jar 是生成的 jar 包java -jar app.jar
mvn compile
mvn package
java -jar target/xxx.jar
gradle build
java -jar build/libs/xxx.jar
java Main.class(错误)java Mainjava -version
javac -version
如果你有具体项目结构(是否有 package、是否用 IDE、是否要打 jar),我可以给你更精确的命令。