在 Debian 下,可以通过几种方式查看 Java 编译版本(class 文件版本 / JDK 版本),下面按常见场景说明:
java -version
或
javac -version
示例输出:
openjdk version "11.0.22" 2024-01-16
表示当前使用的是 JDK 11
.class 文件的编译版本如果是已经编译好的 class 文件:
javap -v YourClass.class | grep "major"
或
javap -v YourClass.class | grep -i version
示例:
major version: 52
| major | Java 版本 |
|---|---|
| 45 | 1.1 |
| 46 | 1.2 |
| 47 | 1.3 |
| 48 | 1.4 |
| 49 | 5 |
| 50 | 6 |
| 51 | 7 |
| 52 | 8 |
| 53 | 9 |
| 54 | 10 |
| 55 | 11 |
| 56 | 12 |
| 57 | 13 |
| 58 | 14 |
| 59 | 15 |
| 60 | 16 |
| 61 | 17 |
| 62 | 18 |
| 63 | 19 |
| 64 | 20 |
| 65 | 21 |
javap -v -cp your.jar com.example.YourClass | grep major
或批量检查:
unzip -l your.jar | grep '\.class$'
update-alternatives --config java
update-alternatives --config javac
如果你是想 查看某个项目源码是用哪个 Java 版本编译的,或者 Maven / Gradle 项目版本,也可以告诉我具体场景。