4

我用 Java 6 创建了一个 Jar。现在我正在创建一个发布文档并记录依赖项。如何找到能成功运行Jar的Java最早版本,以及能成功将源码编译成Jar的Java最早版本?

4

2 回答 2

1

我只知道一个手动解决方案:试试看。然而,有两件事需要考虑。

  1. 代码语言兼容哪个版本?
  2. 它将为哪个 JRE 执行?

首先,您可以使用当前的 JDK 进行操作,只需遍历传递给编译器的-source和参数即可。但是,这不会阻止您使用正在使用的 JDK 中的类和方法。如果这样做,如果您使用的类或方法当时不存在,则代码将不会针对较低的 JRE 执行。-targetjavac

最节省的方法是安装所有不同的 JDK,并尝试使用它们的每个编译器编译代码。

于 2012-07-03T18:05:15.077 回答
0

如果您使用 java 6 创建 jar 并且没有指定不同版本的输出字节码,则生成的类文件将需要 Java 6 或更高版本。-target如果您手动编译,如果您正在使用 eclipse 或其他 IDE,您可以尝试使用命令行选项查看您可以使用源代码生成哪些版本的字节码,大多数都具有控制项目选项中生成的字节码版本的设置或类似的地方。

关于确定类文件的字节码版本的相关帖子:什么版本的 javac 构建了我的 jar?

于 2012-07-03T18:06:18.930 回答