温馨提示×

ubuntu如何批量编译java

小樊
34
2026-10-01 11:27:14
栏目: 编程语言

在 Ubuntu 下批量编译 Java 文件,常见做法有几种,按使用频率和场景给你整理一下:


一、使用 javac 直接批量编译(最常用)

1️⃣ 编译当前目录及子目录下所有 .java

find . -name "*.java" > sources.txt
javac -d out @sources.txt

说明:

  • find 找出所有 Java 文件
  • @sources.txt 是 javac 的“文件列表参数”
  • -d out 指定编译输出目录

2️⃣ 一行命令(不生成中间文件)

javac -d out $(find . -name "*.java")

⚠️ 文件很多时可能超出参数长度限制,推荐用第一种。


二、编译某个目录下的所有 Java(不含子目录)

javac -d out *.java

三、使用通配符(仅当前目录)

javac -d bin *.java

四、使用 Makefile(适合工程化)

示例 Makefile:

SRC := $(shell find . -name "*.java")
OUT := bin

all:
	mkdir -p $(OUT)
	javac -d $(OUT) $(SRC)

clean:
	rm -rf $(OUT)

使用:

make
make clean

五、使用构建工具(推荐中大型项目)

Maven

mvn compile

Gradle

gradle build

六、常见问题

✅ 中文乱码

javac -encoding UTF-8 -d out *.java

✅ 依赖 jar 包

javac -cp "lib/*" -d out @sources.txt

总结建议

场景 推荐方式
简单脚本/作业 find + javac
多模块项目 Maven / Gradle
自动化 Makefile

如果你有具体项目结构(如 src/, lib/, 多模块),我可以给你定制命令。

0 踩