我需要向几个特定java模块的类添加更多的日志(模块是编译的,没有可用的源代码)。我已经成功地提取了源代码,但我很困惑JDK版本将用于重新编译修改过的类。
javap -verbose className.class显示
...
major version: 46
...46 version并不意味着最初的类是用JDK1.2编译的,但是源文件包含来自java的导入:
import java.nio.ByteBuffer;哪个是在java 5中实现的?问题是:it如何能够实现?
备注:
+在OpenJDK1.5下运行的整个系统
+创建模块日期~2006年
发布于 2013-06-25 08:05:27
当使用-target命令行开关时,编译器将生成与旧版本兼容的类文件。
您所拥有的文件可能是用-source 1.2 target 1.2编译的。兼容性只会影响字节码指令的使用,不会阻止您使用更新的API。
https://stackoverflow.com/questions/17292108
复制相似问题