java - .exe 文件仅使用 Java Dev Kit 运行,而不是 Java Runtime Environment
问题描述
所以我最近为高中班级制作了一个小应用程序,我希望它能够在任何安装和更新 JRE 的 Windows 计算机上运行。
我在 Eclipse 中制作了应用程序,将其导出为可运行的 JAR 文件(确保在库处理下选择了“将所需的库打包到生成的 JAR”中),然后使用 Launch4J 将其转换为可执行文件。当我第一次制作 exe 时,根据 JRE 规范,我将最低 JRE 版本设置为 1.8.0,我最初选择了“首选公共 JRE,但如果更新则使用 JDK 运行时”的选项,没有考虑它. 这个exe在我的电脑上运行得很好,所以我把它发给了几个朋友让他们测试它,但它没有用。
原来发生的事情是 exe 使用我的 JDK 版本运行,而不是使用 JRE。我尝试再次制作可执行文件,这次选择“仅使用公共 JRE”选项。当我这次构建可执行文件时,即使我安装了最新的 JRE 版本,它也无法在我的计算机上运行,所以我显然认为以某种方式构建了可运行的 JAR 文件,而无法使用 JRE 运行JDK 的。
我查看了 eclipse 的导出选项,但据我所知,在导出可运行的 jar 文件以更改其运行方式时,我无法更改任何内容。
任何帮助将不胜感激。
解决方案
好的,所以在深入研究了一个项目的设置之后,我想出了如何让它工作。
您需要右键单击您在 Eclipse 中处理的项目。属性 > Java 编译器
在 JDK 合规性下,您需要在“Java 构建路径”上取消选中“使用来自执行环境 'JavaSE-14' 的合规性”
然后在“编译器合规性级别:”下,您需要单击下拉菜单并选择 1.8。
之后,您可以将其导出为可运行的 JAR,然后将其转换为 .exe,一切都会正常运行!