【发布时间】:2012-11-19 20:15:17
【问题描述】:
我有一个简单的应用程序,由 3 个类组成,分别是 PercentIdentity.java、GUI.java 和 Aligner.java
我正在使用 Intellij Idea 11.1.3(我也尝试使用 Eclipse)和 JRE 1.7。我的操作系统是 Win 7 x64。
当我双击使用 Intellij 创建的 jar 文件时,我的程序运行良好。此外,当我执行命令“java -jar *.jar”时它可以工作,其中 * 是我的 jar 文件的名称。
现在我想创建一个 .exe 文件,这样我就可以在其他计算机上运行该程序。
我用 Winrar 打开了 .jar 文件,我可以在 META-INF 文件夹中看到清单文件 (MANIFEST.MF)。
我的清单文件:
Manifest-Version: 1.0
Main-Class: com.example.PercentIdentity (with an empty line in the end)
在 Launch4j、JSmooth 和 IExpress 上花费了大量时间后,我设法创建了可以在我的电脑上完美运行的 .exe 文件计算机。但是,当我在另一台计算机上运行 .exe 文件时(再次使用 Win 7 x64),它会给出错误:
"Java 虚拟机启动器: 无法找到主类: com.example.PercentIdentity。程序将退出。”
我的JSmooth设置如下:
骨架选择:窗口包装器
可执行文件:test.exe
当前目录:. (不知道该放什么)
主类:com.example.PercentIdentity
嵌入式 Jar:*.jar
类路径:*.jar(同上)
最低 JVM 版本:1.0 最大 JVM 版本:1.7
我在 Launch4j 中使用的设置:
输出文件:C:\Users\{name}\Desktop\test.exe
罐子:*.jar
(我没有选中“不要包装罐子”复选框)
清单:(空)
最低 JRE 版本:1.0
我在另一个类似问题中阅读了一个答案,该问题可能是由于 JRE 1.7 而出现的,所以我也尝试了 1.6。但是,这一次它甚至在我自己的计算机上都没有运行。
有人知道我该如何解决这个问题吗?
提前致谢。
【问题讨论】:
-
“现在我想创建一个 .exe 文件,这样我就可以在其他计算机上运行该程序。” 你不是说“其他版本的 Windows”吗?更好的部署策略是使用Java Web Start。如上面链接的 Wiki 中所述,使用
deployJava.js确保用户具有正确的最低 JRE。 -
我在我的桌面上开发了这个程序,它有 Win 7 x64。我正在尝试在我的笔记本电脑上运行它,它也有 Win 7 x64。所以,我希望 .exe 在所有具有 Win 7 x64 和 JVM 的计算机上工作。我对 Java Web Start 了解不多,但我现在会检查一下。谢谢!
-
你解决过这个问题吗?我有一个非常相似的问题。
标签: java installation java-web-start launch4j jsmooth