5

从 Eclipse 导出 Runnable JAR 文件是迄今为止从另一台机器上的命令行启动 Eclipse 项目的最快方法。看到这个答案

一个问题是,如果您要运行的机器上安装的 JRE 比 Eclipse 使用的 JDK 旧,您会收到以下错误:

java.lang.UnsupportedClassVersionError: test_hello_world : Unsupported major.minor version 51.0

我知道在 Eclipse 上我可以构建具有较低合规级别的项目(例如,1.6而不是1.7),但这似乎不会影响导出的 JAR 文件。

关于如何导出 Runnable JAR 文件以在较旧的 JRE 上执行的任何想法?

4

5 回答 5

1

这个过程似乎对我有用(我用 Java 1.2 和 Eclipse Juno 测试过):

  • 创建一个新项目。
  • 将执行环境设置为 J2SE-1.2。
  • 创建一个将一行打印到 System.out 的主类。
  • 运行项目。
  • 导出可运行的 jar。
  • 在 JRE 1.2 中运行 jar。
于 2013-05-24T08:59:35.960 回答
0

通过使用Maven,您可以指定任何版本的 JRE。结果,您将获得构建到指定版本的 JRE 的 jar 文件。例如:

<plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                </configuration>
            </plugin>
</plugins>
于 2013-05-24T08:11:09.100 回答
0

更改合规级别应该有效。您必须执行项目的重建。当你导出一个 Jar eclipse 时不要编译你的项目只是为了打包它,它使用已经编译的文件。

于 2013-05-24T08:14:21.360 回答
0

在 Eclipse 中更改“Java 编译器”设置。将编译器合规级别设为 1.6。

如何为以前的 Java 版本构建 jar?

然后导出“Runnable Jar”。它会工作!

于 2016-03-17T10:03:39.327 回答
0

我更改了合规级别,然后还必须执行以下操作:

  • 右键单击每个项目并打开属性-> Java 构建路径-> 库
  • 删除你不想要的 JDK,在我的情况下是 JDK 8
  • 添加库 -> JRE 系统库 -> 选择你想要的版本,在我的例子中是 7
  • Java Complier -> 将合规级别设置为您想要的级别,在我的情况下为 7
  • 单击确定,根据需要重复。
于 2016-08-09T19:51:28.697 回答