Ubuntu 上运行 Java 报错的原因很多,必须结合具体报错信息才能精确定位。下面我先给你一个常见原因速查表,你可以对照看看属于哪一类;如果你愿意,把完整报错贴出来,我可以一步到位帮你解决。
java: command not found
或
No such file or directory
java -version
javac -version
sudo apt update
sudo apt install openjdk-17-jdk
(Ubuntu 22.04+ 推荐 17,老项目可用 8 / 11)
Error: JAVA_HOME is not set
或 Tomcat / Maven / Hadoop 启动失败
sudo update-alternatives --config java
找到路径,例如:
/usr/lib/jvm/java-17-openjdk-amd64
然后:
echo 'export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
UnsupportedClassVersionError
major.minor version 61.0
✅ 统一版本,或:
java -version
javac -version
Error: Could not find or load main class Hello
-cp✅ 正确示例:
javac Hello.java
java Hello
Permission denied
chmod +x xxx.jar
或
sudo java -jar xxx.jar
乱码
java -Dfile.encoding=UTF-8 xxx
java -version
javac -version
echo $JAVA_HOME
which java
把这 4 条输出贴出来,我可以直接判断问题。
你可以直接发我:
例如:
Ubuntu 22.04
java 17
报错:UnsupportedClassVersionError
我可以一步一步带你修 ✅