Java:一键式Mac可执行文件,包括VM参数



我正在为一个在计算方面绝对是新手的Mac用户构建一个小型Java程序。因此,我想给他一个文件来执行,也许可以通过脚本执行。以前,我只是给出了.jar文件,它可以完美地运行,但现在我必须添加VM参数(最大堆空间)。不幸的是,我对OSX并不满意。到目前为止,我能够给出.jar和一个包含文本的.command文件

#!/bin/bash
java -jar -ms128m -mx512m -jar file.jar

但是,这会显示消息"由于您没有适当的访问权限,文件无法执行"。一种解决方案是在控制台中使用sudo,但恐怕这太复杂了。因此,我的问题是:

  • 我可以让.command或其他脚本在不进入控制台的情况下运行java.jar文件吗
  • 或者,我可以用某种Mac可执行文件(包括VM参数)包装.jar文件吗?我为windows找到了一个类似的解决方案(Launch4j)
  • 或者,有没有其他方法可以提供一个简单的可下载、可执行的邮件,运行java程序,但不安装任何其他程序

edit:我没有对Mac的无限访问权限,所以我需要一个在每次更新.jar文件时不需要Mac的解决方案。

非常感谢!

  1. 如果你有Mac,你可以试试Jar Bundler。它附带XCode,或者你可以在这里找到它https://developer.apple.com/downloads.有了这个应用程序,你可以制作一个点击1次的Mac可执行文件。

  2. 我不知道使用WindowsEclipse版本是否可行。转到"主类",打开上下文菜单并启动"导出"对话框。搜索Mac OS X应用程序捆绑包并按照步骤操作。

  3. 创建一个额外的Java"starter"类,它可以重新启动自己。您可以用ProcessBuilder调用另一个类似于java -Xms1024M -Xmx1024M -jar app.jar的jar。

您可以很容易地创建Mac可执行文件。你应该创建一个扩展名为.app的目录,然后把你的文件放在那里。它应该包含一个名为Contents的子目录,您应该在其中放置一个名称为Info.plist的文件,您可以在其中指定JVM参数和许多其他内容。例如,您可以使用IntelliJ Community Edition软件包。

最新更新