支持 Windows 7 的 Java exe 启动器

2022-09-01 12:17:42

问题

目前,我使用exe4j 4.4.2将我们的客户端应用程序包装在Windows本机可执行文件中,但结果与Windows 7的集成效果并不好。

例如:当我在任务栏中右键单击时,它只提供一个弹出窗口来关闭应用程序,但没有固定。另一方面,Eclipse的Equinox发射器则虚张声势地做到了这一点。

我正在寻找一个具有以下功能的java exe启动器:

  • 将 jar 包装在 Windows 本机可执行文件中(没有 Java Web Start 或类似文件)
  • 不从可执行文件中提取 jar
  • 不需要“程序文件”中的写入权限
  • 使用可执行文件名作为进程名称(仅限一个进程)
  • 与Windows 7很好地集成(特别是在任务栏中固定)
  • 允许设置 JVM 参数(尤其是堆大小)
  • 为 JRE 搜索提供灵活的自定义
  • 积极维护
  • 在蚂蚁构建中集成良好
  • 最好是免费的

我检查了以下内容:

exe4j

  • 缺少 Windows 7 集成
  • 它并不昂贵,但订购许可证并将其分发到构建计算机是一件痛苦的事情。
  • JRE 搜索不够灵活

日食分点

  • 不轻巧
  • 似乎可以做我想做的一切,除了我不知道如何将其与非基于eclipse的应用程序一起使用。
  • 我可以在OSGI,PDE构建世界之外使用它吗?

赢润4J

  • JRE搜索没有很好的记录
  • 尽管功能集令人难以置信,但似乎并未广泛使用,我错过了什么?

发射4J

  • 不支持在 Windows 7 中设置进程名称(错误 ID 3353972)。有一个补丁(bug ID 1670471),但它已被拒绝,参考了已死的jliftoff。
  • JRE搜索不够灵活。

吉士穆斯

  • 似乎没有积极维护。
  • 最新版本来自2007年,远早于Windows 7。

还有其他选择吗?是否有机会将 Eclipse 启动器与非基于 Eclipse 的应用程序一起使用?


答案 1

尝试高级安装程序 http://www.advancedinstaller.com/java.html(此处提供免费版本)。


答案 2

我对WinRun4J很满意。JRE搜索对我来说工作正常。如果在 Windows 注册表中安装并注册了多个 JRE 和 JDK,它有时会阻塞,尤其是在 64 位系统上,但这通常可以通过在相应的 .ini 文件中提供正确的路径来解决。

我没有使用Launch4J,因为它在JRE安装文件夹中创建了一个新的(临时).exe,这对我来说似乎有点奇怪。该方法的优点是,它可以对32位和64位JVM使用单个.exe


推荐