我使用JDK8制作了一个java应用程序,然后从jar中制作了一个可执行文件。
然后我把我的系统更新到java 11,并从我的系统中删除了所有较旧的java版本,当我从exe文件运行这个应用程序时,它不能运行,并将我带到网页浏览器,要求我下载java 8。但是如果我使用java -jar app.jar运行jar,它可以在java 11上正常运行。
我已经使用launch4j从jar中生成了一个可执行文件,不可能选择java11作为最新版本。
那么如何才能让这个exe在java 11上运行呢?
发布于 2019-01-02 22:52:05
除非你已经用最新的launch4j 3.12编译了EXE,否则你很可能会被Java8卡住。在ticket #177 Launch4J doesn't accept Java 9 JDK中增加了对新JDK的支持。
解决方案是用最新的launch4j重新编译EXE,并希望它能与Java11一起工作。或者,你也可以创建一个运行java -jar app.jar的BAT文件,但这与launch4j的全部意义背道而驰。
https://stackoverflow.com/questions/54008114
复制相似问题