如何创建我的java项目的.app文件以在mac os上运行

时间:2011-10-03 09:19:17

标签: java macos

我是mac新手。我有一个java项目。我使用launch4j为窗口创建了该项目的exe。现在我需要为mac创建一个应用程序。我的java项目包含5个java类,也提到了一些外部jar。我找到了这个网站http://www.centerkey.com/mac/java/。但是当我尝试创建可执行jar文件时,我感到震惊。在窗口上工作时,我使用以下命令来创建类文件和jar文件。

创建类文件..

javac one.java two.java -cp mail.jar;sqlite.jar Mainclass.java

为从上述命令

创建的类创建jar文件
jar cvf one.jar one.class

我在mac终端中使用了相同的命令。但是创建类文件的第一个命令不起作用。任何建议......

3 个答案:

答案 0 :(得分:2)

AFAIK Eclipse可以为Java项目创建Mac应用程序包,但我没有使用它,也不能说它是如何工作的。

尝试导出 - >其他 - > Mac OS X应用程序包

答案 1 :(得分:0)

上述内容的更新:“导出->其他-> Mac OS X应用程序捆绑包”不适用于当前的Eclipse和Java。试图解决这个绊脚石,我发现了以下几点: https://centerkey.com/mac/java/ 我尝试了他们的示例教程,并且有效。

答案 2 :(得分:0)

首先,不要使用javapackager

javapackager 是 JDK 8 发布的打包签名工具;当JDK 11删除javaFX时,javapackager也作为其中的一部分被删除。

这就是为什么当您尝试使用 javapackager 时可能会遇到以下问题:

The operation couldn’t be completed. Unable to locate a Java Runtime that supports javapackager.

javapackage error

我在这里特别提到它,因为整个互联网上有太多过时的信息,花了我很多时间转圈子。

我如何设法打包自包含的 Java 应用程序

  1. 使用 Eclipse 生成可运行的 JAR 文件

eclipse

a. Right click your project -> Export.
b. Select Java -> Runnable JAR file.
c. Next.
d. Specify Export destination, e.g. ~/Downloads/jar/HelloSwing.jar .
e. "Library handling" select "Extract required libraries into generated JAR".
f. Finish.
  1. 使用jpackage进行打包 jpackage

在终端中输入以下命令:

jpackage --type pkg \
 --temp ~/Downloads/temp \
 --name HelloSwing \
 --input ~/Downloads/jar \
 --main-jar HelloSwing.jar \
 --main-class com.cheng.rostergenerator.ui.Main
  1. 获取生成的文件

enter image description here

在当前终端路径 ~/ 中,生成HelloSwing-1.0.dmg(51MB),即安装文件。

在~/Downloads/temp下,生成HelloSwing.app(125MB),双击启动App。

这只是一个 Java Swing 的 Hello World 项目,但是,应用程序的图像大小有点令人生畏。

无论如何,编码愉快!

参考:jpackage command doc