在 linux 主机上创建 osx java 应用分发

Creating osx java app distribution on linux host

我正在开发一个 java 应用程序(linux、java 10+),我想在其他平台上进行本地分发。我成功地构建了一个 windows dist: jlinked in linux with a java 10+ windows dist,即它用我的模块创建了一个目录,java.exe 和各自的 dll(我证实它在 windows 上有效)。

问题是,当我想要构建一个 OSX dist (linux java 10 jlink + OSX java 10 dist) 时,结果文件夹有 java linux 可执行文件和 linux SO 库 而不是 osx dylib 库 .

我使用的命令行是(这适用于 linux 和 windows):

${JAVA_HOME}/bin/jlink --compress 2 --no-header-files --module-path target/classes/:"$TARGET_JDK_PATH"/jmods/ --add-modules jdk.crypto.cryptoki,$MODULE_NAME --output $OUTPUT_DIR

我也试过了

"$TARGET_JDK_PATH"/Contents/Home/jmods/

Linux和OSXJava版本是11.0.2.

提前致谢。

我解决了!

无法使用 JDK 10 (jlink) 构建目标为 JDK 11 (jmods) 的 dist。此外,必须指定

<target.osx.jdk>/Contents/Home/jmods

作为 "jmods" 目录。

无论如何,谢谢你的想法和建议。