在 Ubuntu 上编译 Java 时提示“缺包(package does not exist / cannot find symbol)”是很常见的问题,通常原因和解决办法如下:
javax.*、java.*)一般是因为:
javax.xml.bind)✅ 解决:
sudo apt update
sudo apt install default-jdk
java -version
javac -version
如果是 Java 11+ 缺 javax.xml.bind 等:
sudo apt install libjaxb-java
编译时加:
javac -cp /usr/share/java/jaxb-impl.jar Main.java
org.apache.*、com.google.*)这是最常见的情况。
✅ 解决方式有三种:
javac -cp .:lib/xxx.jar Main.java
运行:
java -cp .:lib/xxx.jar Main
⚠️ Linux 用
:分隔,不是;
sudo apt install maven
项目结构:
pom.xml
src/main/java/...
编辑 pom.xml 添加依赖,然后:
mvn compile
Maven 会自动下载并管理包。
sudo apt install gradle
build.gradle 里写依赖,然后:
gradle build
error: package org.apache.commons.lang3 does not exist
sudo apt install libcommons-lang3-java
javac -cp /usr/share/java/commons-lang3.jar Main.java
Ubuntu 很多常见 Java 包都能 apt 安装,命名一般是:
libxxx-java
javac,不是 java-cp 指定如果你愿意,可以把:
贴出来,我可以直接帮你定位是哪一个包、怎么装。