在 CentOS 上“批量编译 Java 代码”通常有以下几种常见做法,取决于你的项目规模和结构。下面从简单脚本到构建工具逐步说明。
javac + 通配符(适合小项目).javafind . -name "*.java" > sources.txt
javac -d out @sources.txt
说明:
find 找出所有 Java 源文件@sources.txt 是 javac 的“文件列表参数”-d out 指定编译输出目录#!/bin/bash
SRC_DIR="./src"
OUT_DIR="./out"
mkdir -p $OUT_DIR
FILES=$(find $SRC_DIR -name "*.java")
javac -d $OUT_DIR $FILES
赋予执行权限并运行:
chmod +x build.sh
./build.sh
for 循环逐个编译(不推荐但直观)for f in $(find . -name "*.java"); do
javac -d out "$f"
done
⚠️ 缺点:依赖顺序容易出错,不适合有依赖关系的项目
sudo yum install -y maven
mvn compile
mvn package
✅ 优点:
sudo yum install -y gradle
gradle build
for dir in project1 project2 project3; do
echo "Building $dir"
(cd $dir && mvn compile)
done
javac: command not foundsudo yum install -y java-1.8.0-openjdk-devel
javac -encoding UTF-8 -d out *.java
| 场景 | 推荐方式 |
|---|---|
| 学习 / 小工具 | find + javac |
| 多文件项目 | Shell 脚本 |
| 正式项目 | Maven / Gradle |
| 多项目批量 | 循环 + 构建工具 |
如果你愿意,可以告诉我:
我可以给你一个完全贴合你项目的编译方案。