如何在Mac 10及以上版本上分发Java应用程序7.0及以上版本?

如何在Mac 10及以上版本上分发Java应用程序7.0及以上版本?,java,xcode,macos,jar,Java,Xcode,Macos,Jar,我需要在Mac上运行Java应用程序。我可以使用Xcode捆绑应用程序。本教程要求读者访问Jar Bundle应用程序,但我在/Developer/Applications/Java Tools/文件夹中找不到它 在那之后,我遇到了这个似乎是提供了一个很好的方法来做这件事 但是,我想知道是否有比上面提到的更好的方法来完成这项工作。Mac OS X实用程序Jar Bundler、图标生成器和PacakgeMaker都不推荐使用。即使是各种各样的AppBundler项目似乎也注定要消失 未来的方向是

我需要在Mac上运行Java应用程序。我可以使用Xcode捆绑应用程序。本教程要求读者访问Jar Bundle应用程序,但我在/Developer/Applications/Java Tools/文件夹中找不到它

在那之后,我遇到了这个似乎是提供了一个很好的方法来做这件事


但是,我想知道是否有比上面提到的更好的方法来完成这项工作。

Mac OS X实用程序Jar Bundler图标生成器PacakgeMaker都不推荐使用。即使是各种各样的AppBundler项目似乎也注定要消失

未来的方向是,它包含在JDK中

-deploy-native pkg
选项将Java应用程序(可执行JAR)转换为本机macOS安装程序

命令示例:

$ jar cmf MainClass.txt ShowTime.jar *.class
$ javapackager -deploy -native pkg -srcfiles ShowTime.jar \
   -appclass ShowTime -name ShowTime \
   -outdir deploy -outfile ShowTime -v
输出:
deploy/bundles/ShowTime-1.0.pkg

我在:


不管是好是坏,javapackager捆绑了JRE,生成的
.pkg
文件超过了60MB。

正如Dem所说,我用户
javapackager
如下:

打开终端,进入工作文件夹,如
cd-Desktop/
和类型

javapackager \
> -deploy \
> -title AppTitle \
> -name AppName \
> -appclass your.app.class \
> -native dmg \
> -outdir ~/YourOutputDir \
> -outfile out \
> -srcfiles your.jar

请看一看,了解更多详细信息,这可能还有助于了解另一个有用的资源-它包含一个为您创建应用程序包的Ant任务。然而,它没有做的是签署你的应用程序,这是目前商店的一项要求。但这里可以提供帮助。这里有一个更全面的Java应用程序代码签名示例:这些都没有帮助。除了Java应用程序之外,还可以使用javapackager创建一个安装程序来安装应用程序工作所需的其他资源,如驱动程序?是的,但我没有尝试过。我相信您希望使用
-srcdir
标志来包含包含所需资源的文件夹。该标志设置“要打包的文件的基本目录”。或者,您可以在运行
javapackager
之前将资源放入JAR文件中。