是否可以在Mac版ZuluFX上使用javapackager

时间:2019-03-13 12:54:09

标签: javafx codenameone openjfx javapackager azul-zulu

我能够在Windows上将ZuluFX 8与javapackager一起使用。但是,在Mac上,我收到此错误:

  

由于配置问题而跳过了Bundle Mac Application Image:无法确定指定的运行时目录中存在哪个JRE / JDK。
  修复建议:将运行时目录指向JDK / JRE根目录,该根目录的Contents / Home目录或JDK的Contents / Home / jre目录之一。

将软件包移动到Contents/Home中是很容易的,但是我怀疑这样做是否可行,因为似乎Mac版本的ZuluFX 8没有捆绑JRE。这是否可以解决? >

1 个答案:

答案 0 :(得分:2)

  

将软件包移动到Contents / Home中是很容易的,但是我怀疑这样做是否可行,因为Mac版本的ZuluFX 8似乎没有捆绑JRE。

根据我所看到的,我不确定那是正确的。 ZuluFx 8 archive for Mac包含一个jre目录。我将归档文件解压缩到~/zuluFX,然后根据MacOS的要求创建了Contents/Home目录,并向其中的jre目录添加了符号链接。然后,我相应地设置$ JAVA_HOME:

$ pwd
/Users/cody/zuluFX
$ mkdir -p Contents/Home
$ ln -s ../../jre .
$ export JAVA_HOME=~/zuluFX

然后,我在github上使用了一个简单的javapackager example来测试其用法(此框上未安装其他JRE / JDK)。该示例应用程序只是将Java属性和环境变量转储到TextArea中。

在示例中,我不得不修改3build脚本以注释掉其尝试重新设置$JAVA_HOME的尝试,但是,否则,它可以使用以下javapackager命令成功构建: / p>

javapackager \
  -deploy -Bruntime=${JAVA_HOME} \
  -native image \
  -srcdir . \
  -srcfiles MacJavaPropertiesApp.jar \
  -outdir release \
  -outfile ${APP_DIR_NAME} \
  -appclass MacJavaPropertiesApp \
  -name "MacJavaProperties" \
  -title "MacJavaProperties" \
  -nosign \
  -v

当我启动生成的应用程序时,它会按预期报告azul / zulu jre的使用情况:

enter image description here