在 Debian 系统里,“检查 Java 编译依赖”通常分几种场景。下面按最常见需求给你一个清晰、可操作的说明。
javac(Java 编译器)javac -version
PATHdpkg -l | grep -i java
常见编译相关包:
openjdk-17-jdkopenjdk-11-jdkdefault-jdk⚠️ 注意:
- JDK = 编译 + 运行
- JRE = 只能运行,不能编译
sudo apt update
sudo apt install default-jdk
检查:
java -version
javac -version
mvn dependency:tree
查看依赖是否完整:
mvn compile
常见错误:
package does not existcannot find symbol说明缺少依赖或版本不对。
gradle dependencies
或:
./gradlew dependencies
手动检查:
javac -cp "lib/*" YourFile.java
如果报错:
error: package xxx does not exist
说明缺少 jar 包。
如果你是在打包 Debian 软件包(.deb):
apt-cache showsrc 包名
重点看:
Build-Depends:
例如:
Build-Depends: default-jdk, libxxx-java
apt-cache depends 包名
jar tf xxx.jar
javap -verbose xxx.class | grep "Class"
| 问题 | 原因 | 解决 |
|---|---|---|
javac not found |
没装 JDK | apt install default-jdk |
package javax.servlet does not exist |
缺 Java EE / Jakarta | 加对应 jar |
Unsupported class file major version |
JDK 版本不匹配 | 用对应 JDK |
| Maven 下不了依赖 | 网络 / 源问题 | 检查 Maven 镜像 |
# 1. 是否可编译
javac -version
# 2. 缺依赖吗
mvn compile # Maven
gradle build # Gradle
# 3. 缺系统 Java
sudo apt install default-jdk
如果你愿意,可以告诉我:
cat /etc/debian_version)我可以帮你精准定位缺哪一个依赖。