【发布时间】:2012-12-28 10:37:02
【问题描述】:
我有一个小(摆动)japplet,在日食中完美地运行:它包含一个标签,两个按钮和一个菜单,具有最小用户交互(选择菜单项时,容器的颜色更改)。 我将其转换为 .jar:
- 我右键单击类名(Sw3.java)
- 选择“导出”,然后选择“Java”,然后选择“JAR 文件”
- 接下来,我选择当前项目名称作为要导出的资源,双击它下面的“默认包”,从右侧的类列表中选择所需的类名(Sw3.java)
- 接下来,我勾选“导出生成的类文件和资源”,选择导出目标为“JAR 文件”,并将其放在“文档”中,名称为“Sw3.jar”。我还选择了“压缩 JAR 文件的内容”。
- 在下一个屏幕中,我检查了“导出带有编译错误的类文件”和“导出带有编译警告的类文件”
我听说获取exe文件的正确方法是将.jar转换为.exe,所以我将“Launch4j”应用程序与之前获得的.jar一起使用:
- 在“基本”面板中:指定输出文件:C:\Users\jerry\Documents\Sw3.exe 和 JAR 文件:C:\Users\jerry\Documents\Sw3.jar。
- 进程优先级正常
- 标题类型:GUI
- 最小 JRE 版本:1.0.0
- 我按下“滚轮”并选择 Project.xml 并收到一条成功的确认消息。
我已经安装了 JRE,所以 .exe 应该可以工作,但它不能工作。我做错什么了?我将首先调查 .JAR 是否正确获得,这是一个好方法吗?我将如何检查?谢谢!
PS:在被建议使用 JFrame 而不是 JApplet 时,我这样做了,但当我双击 .exe 以打开它时仍然没有任何反应。这让我怀疑我描述的步骤有问题。
【问题讨论】:
-
为什么你制作了一个 JApplet 而不是一个简单的 JFrame?小程序是特殊的野兽,虽然它们在某些情况下可以在桌面上运行,但它们更适合放在网页上(显然它已经过时了)。
-
谢谢 PhiLho,我使用 JApplet 是因为我是新手,正在练习 Swing,而且对它比 JFrame 更舒服。但是,我按照下面的 martijno 和您自己的建议添加了一个 JFrame,但我仍然遇到同样的问题。
-
我在考虑使用纯 JFrame。我只是不知道 Launch4j 是否可以处理 JApplet(Google 搜索返回零出现,这很少见!)。您可以尝试使用
--l4j-debug选项从命令行启动exe,也许您会收到一些相关的错误消息。 -
谢谢 PhiLo,我听从了这个建议,从这个链接中选择了第二个示例,并添加了一些额外的行和组件(例如标签)jsong.ba.ttu.edu/ISQS2341/Fall05/Lecture08_Example.pdf。这不起作用,所以我再次尝试使用更复杂的 JFrame 示例,即来自同一链接的 MyFrame 示例。当我从 Eclipse 运行它们时,它们都可以正常工作,所以我在上面的原始问题中提出的步骤一定有问题?