【问题标题】:How do I create an .exe for a Java program? [duplicate]如何为 Java 程序创建 .exe? [复制]
【发布时间】:2010-10-05 17:00:43
【问题描述】:

可能重复:
How can I convert my java program to an .exe file ?

我想为 Java 程序创建一个 Windows .exe。以前,我为此使用过 JEXECreator,但并不完全令人满意,因为:

  • 可执行文件有时可以在创建它的机器上运行,但不能在其他机器上运行。
  • 该程序是商业的;如果您使用试用版,它会在您的应用程序中添加一个 nag screen。

如果目标机器上没有安装Java,我不需要生成的.exe来工作(事实上,我认为这是不可能的)。

有什么建议吗?

【问题讨论】:

  • stackoverflow.com/questions/147181/…stackoverflow.com/questions/309329/… 的副本(仅来自“相关”部分)。
  • 你能告诉我们你想要一个.exe文件的原因吗?为什么一个可执行的 .jar 还不够?
  • 将JVM字节码编译为本机字节码当然不是不可能的。 GNU java 编译器在这方面做得和其他编译器一样好。
  • 另外我发现清单文件有问题

标签: java exe


【解决方案1】:

Launch4j 或许?不能说我自己用过,但听起来像你想要的。

【讨论】:

  • 我还可以建议,如果您需要创建一个不仅仅是 Windows 的本机应用程序,那么 JWrapper 允许您在主要平台(Windows Linux、Mac)上免费 create native apps from Java。它可以在任何操作系统上运行,支持内置代码签名、图标化和自动更新,并且可以选择将 JRE 捆绑在一个非常小的(高度压缩的)包中。
  • 在看到 @AntonyM 的评论之前,我正要推荐 JWrapper。如果您希望支持多个操作系统,JWrapper 是我最好的建议。
【解决方案2】:

大多数将 java 应用程序转换为 .exe 文件的程序只是程序的包装,最终用户仍需要安装 JRE 才能运行它。据我所知,没有任何转换器可以使其成为字节码的本机可执行文件(已经尝试过,但如果有成功的话,你现在就会听说了)。

至于包装器,我使用过的最好的包装器(如前所述)是:

JSmooth

Launch4j

祝你好运!

【讨论】:

    【解决方案3】:

    如果你真的想要一个exe Excelsior JET 是一个专业级的产品,可以编译成原生代码:

    http://www.excelsior-usa.com/jet.html

    你也可以看看JSMooth:

    http://jsmooth.sourceforge.net/

    如果您的应用程序与其兼容的 AWT/Apache 类路径兼容,那么 GCJ 将编译为本机 exe。

    【讨论】:

      【解决方案4】:

      我使用 exe4j 将所有 java jar 打包成一个最终的 .exe 文件,用户可以将其用作普通的 windows 应用程序。

      【讨论】:

        【解决方案5】:

        你可以试试exe4j。这实际上是我们通过其表亲 install4j 使用的。

        【讨论】:

          【解决方案6】:

          Java Service Wrapper 可能会对您有所帮助,具体取决于您的要求。

          【讨论】:

            【解决方案7】:

            如果目标机器上安装了 Java,则无需创建 .exe 文件。一个 .jar 文件就足够了。

            【讨论】:

            • 如果最终用户不是技术人员,那么只有在目标机器上安装了 Java 并且 java.exe 在 PATH 上时,一个 .jar 文件就足够了i>并且主类在清单文件中指定。一般来说,.exes 对于非技术人员来说执行起来会更简单一些。
            • -1 这只是没有回答问题...
            猜你喜欢
            • 2017-06-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多