我正在开发一个 java 应用程序(linux、java 10+),我想在其他平台上本地分发它。我成功地构建了一个 windows dist:在 linux 中使用 java 10+ windows dist jlinked,即,它用我的模块、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 和 OSX Java 版本是 11.0.2。
提前致谢。
最佳答案
我解决了!
无法使用 JDK 10 (jlink) 构建目标为 JDK 11 (jmods) 的 dist。此外,必须指定
<target.osx.jdk>/Contents/Home/jmods
作为“jmods”目录。
无论如何,谢谢你的想法和建议。
关于java - 在 linux 主机上创建 osx java 应用程序分发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55259177/