在 CentOS 上“编译 Java 时设置路径”,通常有两种理解,我分别说明,你可以对号入座。
JAVA_HOME(推荐)先确认 Java 安装位置:
which java
readlink -f $(which java)
假设路径是:
/usr/lib/jvm/java-1.8.0-openjdk
设置环境变量(临时):
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
永久生效(推荐):
vi ~/.bashrc
添加:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
保存后:
source ~/.bashrc
验证:
java -version
javac -version
javac -d ./out ./src/Hello.java
如果有多个包:
javac -d ./out ./src/com/example/*.java
javac -cp ./lib/xxx.jar -d ./out ./src/Main.java
多个 jar:
javac -cp "lib/*" -d out src/Main.java
如果你是想从源码编译 Java(如 OpenJDK),路径设置方式不同。
bash configure \
--prefix=/opt/java11 \
--with-boot-jdk=/usr/lib/jvm/java-10-openjdk
常用参数:
--prefix:安装路径--with-boot-jdk:引导 JDK 路径(必须有)make
make install
✅ javac: command not found
yum install java-1.8.0-openjdk-devel
✅ 多版本 Java 切换
alternatives --config java
alternatives --config javac
如果你能补充一句:
我可以给你更精确的命令。