6

是否有任何应用程序可以创建 Java 应用程序的本机应用程序启动器?作为“本机”术语,我的意思是“看起来像正常的、依赖于平台的应用程序,它只启动 java -jar foobar.jar,如果没有安装 JVM 则显示错误”。我听说过 Launch4j,但它只适用于 Windows。我想要多平台(Win+Lin+Mac)解决方案。而且我不是在谈论 shell 脚本。我想要正常的可执行文件。

顺便说一句,Eclipse 看起来它已经得到了我想要的东西。

问候。

4

4 回答 4

3

如果您使用的是 maven,那么为所有平台创建 Native 应用程序将非常容易,我们使用 launch4j for windows(.exe),对于 debian(.deb) 我们使用 jdeb,对于 Mac OSX(.app 和 .dmg)我们使用 osxappbundle。

于 2012-10-09T11:03:28.937 回答
2

有像launch4j这样的工具可以做到这一点。

您可以将它与izPack一起使用,以提供本机安装程序和启动程序。有关更多详细信息,请参阅内容。

于 2012-09-14T12:45:27.503 回答
2

我使用LibGDX Packr,但它使用与应用程序一起打包的 JVM,而不是安装在操作系统上的 JVM。因为我更喜欢提供真正的 GNU Linux 包,所以我使用JDebRedline RPM。我将不得不找到一个解决方案来为 Windows 创建一个 MSI 包。

这些工具是跨平台的,这意味着您不必在 Mac OS X 下创建 .app 文件,您不必在 Windows 下使用本机 Windows 启动器创建压缩文件,您不需要不必在 GNU Linux 下创建 GNU Linux 软件包。

我使用 Ant 作为构建工具,但你可以用 Maven 做同样的事情,JDebRedline RPM都支持它,为LibGDX Packr编写 Ant 任务非常容易。当我成功地正确使用JDebRedline RPM时,我仍然犹豫是否将我的高级部署工具放入一个单独的库中。我想使用同质语法以允许开发人员使用相同的参数来创建所有本机包。此外,我的代码为您创建了 .icns 文件,当您不想依赖本机 Mac OS X 工具或任何外部应用程序时,它非常有用,它基于我的 Apache Commons Imaging 补丁。

PS:几个月前我把自己的工具(JNDT)放到了一个单独的 Ant 脚本中,它的文档在这里

于 2014-10-04T13:26:19.940 回答
0

我发现install4j对于多平台应用程序绑定很有用。它易于使用并具有漂亮的图形界面。

它支持Windows + Linux + MacOSX + Unix
它还可以绑定 JRE,即使用户没有安装任何 JRE,您也可以运行它。

于 2015-09-26T12:27:17.320 回答