CMD中查看CLASS文件编译的JDK版本

 javap -verbose classname

会输出一些信息,大致如下:

Compiled from "HtmlCrawer.java"

public class org.eagleeye.html.HtmlCrawer extends java.lang.Object

SourceFile: "HtmlCrawer.java"

minor version: 0

major version: 50

Constant pool:

const #1 = class #2; // org/eagleeye/html/HtmlCrawer

const #2 = Asciz org/eagleeye/html/HtmlCrawer;

const #3 = class #4; // java/lang/Object

const #4 = Asciz java/lang/Object;

const #5 = Asciz client;....

后面省略了,可以看到前面有两行:

minor version:

0major version: 50

JDK 编译器版本target 参数十六进制 minor.major十进制 minor.major
jdk1.1.8不能带 target 参数00 03 00 2D45.3
jdk1.2.2不带(默认为 -target 1.1)00 03 00 2D45.3
jdk1.2.2-target 1.200 00   00 2E46.0
jdk1.3.1_19不带(默认为 -target 1.1)00 03 00 2D45.3
jdk1.3.1_19-target 1.300 00   00 2F47.0
j2sdk1.4.2_10不带(默认为 -target 1.2)00 00   00 2E46.0
j2sdk1.4.2_10-target 1.400 00   00 3048.0
jdk1.5.0_11不带(默认为 -target 1.5)00 00   00 3149.0
jdk1.5.0_11-target 1.4 -source 1.400 00   00 3048.0
jdk1.6.0_01不带(默认为 -target 1.6)00 00   00 3250.0
jdk1.6.0_01-target 1.500 00   00 3149.0
jdk1.6.0_01-target 1.4 -source 1.400 00   00 3048.0
jdk1.7.0不带(默认为 -target 1.6)00 00   00 3250.0
jdk1.7.0-target 1.700 00   00 3351.0
jdk1.7.0-target 1.4 -source 1.400 00   00 3048.0
Apache Harmony 5.0M3不带(默认为 -target 1.2)00 00   00 2E46.0
Apache Harmony 5.0M3-target 1.400 00   00 3048.0

### 如何使用 CMD 命令编译 Java 文件生成 Class 文件 为了在命令提示符 (CMD) 中将 `.java` 源文件编译成 `.class` 字节码文件,需遵循特定步骤并确保 JDK 已正确定义环境变量。 当已配置好 JDK 的环境变量时,在任何地方打开 CMD 即可进行编译工作[^1]。对于未设置环境变量的情形,则需要导航至包含目标 `.java` 文件的具体目录再执行相应指令,否则可能导致找不到 `javac.exe` 或者其他工具链组件的问题发生。 具体来说,在 CMD 界面中输入如下命令用于启动编译过程: ```bash javac 文件名.java ``` 此命令会读取指定的源代码文件,并尝试将其转换为目标机器能够理解的形式——即字节码格式,最终在同一层级创建名为 `文件名.class` 的新文件作为输出产物。 假设存在一个位于 D:\workspace\example 下叫做 Test.java 的例子程序,那么完整的操作流程可以表示为: #### 示例:编译单个 Java 文件 1. **进入项目所在目录** ```bash cd /d D:\workspace\example ``` 2. **执行编译命令** ```bash javac Test.java ``` 如果一切顺利的话,现在应该可以在相同位置看到由上述动作产生的 Test.class 文件了。 值得注意的是,某些情况下即使成功完成了编译阶段却仍然无法正常运行程序,这可能是由于不同版本之间兼容性问题所引起的。例如安装了多个版本JDK 并且它们之间的 PATH 和 JAVA_HOME 设置冲突就会造成此类现象[^4]。因此建议保持单一稳定版次的同时也要确认这些系统属性指向正确的位置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值