Windows,请双击运行

时间:2018-11-08 16:05:22

标签: java jar sikuli sikuli-x

我是第一次尝试Java。 我正在使用Intellij IDEA并创建一个简单的应用程序。 在IDE中,它可以正常工作,然后创建一个JAR工件并按以下方式运行它: 没问题的java -jar myappname.jar。

现在,我想从资源管理器中双击来启动相同的JAR,但是什么也没发生,为什么?

请注意,如果我双击另一个JAR(sikulixsetup-1.1.3.jar),它将正确启动并显示gui,因此问题不在于Windows中的类型关联。

我的测试应用程序没有GUI,但我知道它是否可以正常运行,因为它使用Sikulixapi库自动执行Windows操作,所以我看它是否在做某事。

谢谢!

3 个答案:

答案 0 :(得分:0)

这是因为jar不是可执行二进制文件,而是纯zip存档。操作系统无法执行该操作。这就是为什么必须使用java可执行文件并将存档作为参数传递来运行应用程序的原因。

如果您希望您的应用程序是“可点击的”,则必须使用http://launch4j.sourceforge.net/之类的包装器解决方案

答案 1 :(得分:0)

好,我解决了我的问题。 通常,只需在Windows中双击JAR即可毫无问题地运行, 在我的情况下,如果.jar文件与javaw.exe的32位版本相关联,而JAR中的代码期望使用64位环境,则该文件未运行。 将Windows中的.jar类型关联从javaw.exe的32位版本更改为64位版本

答案 2 :(得分:0)

在将文件从一个Java打开到另一个Java(从32位转换为64位,反之亦然)时,更改要使用的默认程序。