1

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

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

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

我的测试应用程序没有 gui,但我知道它是否正确运行,因为它使用 Sikulixapi 库自动执行窗口,所以我看看它是否在做某事。

谢谢!

4

3 回答 3

1

好的,我解决了我的问题。通常,只需在 Windows 中双击 JAR 即可正常运行,在我的情况下,它没有运行,因为 .jar 文件与 javaw.exe 的 32 位版本相关联,而 JAR 中的代码需要 64 位环境。将 Windows 中的 .jar 类型关联从 32 位更改为 64 位版本的 javaw.exe 解决了该问题

于 2018-11-09T13:40:48.093 回答
0

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

于 2020-07-26T20:02:32.270 回答
0

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

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

于 2018-11-08T16:09:58.537 回答