30

问题

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

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

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

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

我检查了以下内容:

exe4j

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

日食春分

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

WinRun4J

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

发射4J

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

JS平滑

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

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

4

4 回答 4

3

试试 Advanced Installer http://www.advancedinstaller.com/java.html(这里有免费版)。

于 2011-08-28T23:34:55.993 回答
1

在我看来,您只需要使用 Launch4J。进程名称与您启动时使用的 .exe 名称相匹配。以这种方式包装的程序的一个很好的例子是“Keystore Explorer 4.01”。

于 2011-08-25T23:36:15.580 回答
1

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

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

于 2011-08-31T08:22:54.677 回答
1

我会创建一个bat文件。将此 bat 文件包装成 exe。您可以创建一个带有图标和所有内容的 exe。试试这个 bat 到 exe 转换器:

http://download.cnet.com/Bat-To-Exe-Converter/3000-2069_4-10555897.html

这样,您可以更好地控制。exe的大小非常小。

编辑:另外,exe的创建是一次性的。

于 2011-09-09T11:07:45.063 回答