【问题标题】:How to convert jar files into exe & rpm如何将jar文件转换为exe和rpm
【发布时间】:2011-04-06 08:24:16
【问题描述】:

我的应用有以下 jar 文件:

DesktopApplication1.jar

另外,我为我的应用程序使用了一些额外的 API,如 jsoup、jexcelapi 等。lib 文件夹中大约有 7 个 api。

如何将所有这些jar文件制作成EXE文件和RPM文件?

附:我是第一个计时器。所以考虑到这一点。另外,我使用的是 Netbeans 6.8。所以主 API 在 \dist 文件夹中。使用的 API 在 \dist\lib 文件夹中。

提前致谢

【问题讨论】:

  • 您确定需要 .exe 吗? java独立于平台有什么意义?也许自执行 jar 对你来说就足够了?
  • 如何制作自执行jar
  • 另一种解决方案您可以使用 Java Service Wrapper。因此,您可以使用包装二进制文件启动、停止、重新启动应用程序。比如projectapp/bin/app startprojectapp/bin/app stopprojectapp/bin/app restartadisembiring.wordpress.com/2011/04/04/…
  • 基本上你需要一个清单来指定主类和依赖项。这是一些关于它的教程:skylit.com/javamethods/faqs/createjar.html
  • 我打开了我的 Manifest.mf 文件来添加主类。但文件内容如下: Manifest-Version: 1.0 X-COMMENT: Main-Class will be added by build

标签: java installation


【解决方案1】:

使用jsmooth从jar制作exe

【讨论】:

  • JSmooth 真的很酷,它从一开始就可以正常工作,而且 GUI 很容易理解。 Launch4j 有问题。它在 JSmooth 工作的地方不起作用。
【解决方案2】:

使用 fatJar 构建您的 JAR 以包含其中的所有依赖项,然后使用您喜欢的工具使其可执行(我使用 Launch4j

RPM 有点不同,因为它不是可执行文件,而是包格式。有很多教程,你如何构建它。

【讨论】:

  • 最重要的是:使用 Launch4j 生成的 exe 仍然可以在每个平台上使用 java -jar myprog.exe 运行。
【解决方案3】:

您可以将 BAT 文件设为扩展名为 .bat(适用于 Windows)的文件

只要打开记事本,写下以下文字

java -jar DesktopApplication1.jar

将文件另存为 filename.bat(.bat 扩展名很重要)

将 .jar 和 .bat 文件放在一起,每次需要运行 jar 时双击 .bat 文件...

如果您不想将两者放在一起,请在 .bat 文件中提供 jar 的绝对路径

java -jar AbsolutePath/DesktopApplication1.jar

对于 linux 机器,创建一个扩展名为 (.sh) 的文件,其余过程相同...

【讨论】:

  • @downvoter:这是对 sunandan 的评论的回复,他说他想让 jar 自动执行......
【解决方案4】:

试试InstallJammer。它提供你想要的。

【讨论】:

    【解决方案5】:

    部署应用。与Java Web Start。 JWS 可以轻松地将其他 Jars 添加到应用程序中。运行时类路径,避免了胖 jar 违反 API 分发许可证的常见问题(当它说 WTE '您可以以 unaltered 形式分发它......')并且可以提供仅下载用户需要的部分(当用户需要时)的进一步好处。

    JWS 具有许多其他很酷的功能,例如桌面集成(菜单栏、开始菜单项)、启动屏幕、自动更新、Java 所有者的支持以及与任何可用 Java 的平台的兼容性。

    【讨论】:

      【解决方案6】:

      用于创建 .exe 以在 Windows 上运行:

      1. http://launch4j.sourceforge.net下载launch4j。
      2. 通过launch4j构建包装器.exe。
      3. http://www.jrsoftware.org/isdl.php下载innoSetup。
      4. Build .exe 作为安装程序,安装文件,供用户下载和安装。

      5. 为 linux 安装 rpm: 如果您的应用程序使用了其他原生库,则需要下载并安装 Linux 原生库。这就是我们为我们的应用程序构建 rpm 的方式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-11-05
        • 1970-01-01
        • 1970-01-01
        • 2013-02-27
        • 1970-01-01
        • 2011-05-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多