我正在尝试让一个在我的机器上完美运行的应用程序在 docker 上运行,这是我的 docker 文件:
FROM openjdk:11-jre-slim
VOLUME /tmp
ADD someJar.jar someJar.jar
ADD lib lib
ADD config.properties config.properties
ENTRYPOINT ["java", "-javaagent:lib/aspectjweaver-1.9.2.jar",
"-javaagent:lib/spring-instrument-5.1.6.RELEASE.jar", "--module-path",
"lib/javafx-sdk-11.0.2", "--add-modules=javafx.controls", "-
Dprism.verbose=true", "-jar","someJar.jar"]
我还尝试将其基于 alpine openjdk11 版本,结果相同:
FROM adoptopenjdk/openjdk11:alpine
VOLUME /tmp
RUN apk update && apk add libx11 mesa-gl gtk+3.0 && apk update
ADD someJar.jar someJar.jar
ADD lib lib
ADD config.properties config.properties
ENTRYPOINT ["java", "-javaagent:lib/aspectjweaver-1.9.2.jar", "-javaagent:lib/spring-instrument-5.1.6.RELEASE.jar", "--module-path", "lib", "--add-modules=javafx.controls", "-Dprism.verbose=true", "-jar","someJar.jar"]
lib 文件夹包含 openJFX 运行时的 linux 风格(.so 文件和 .jar 文件)。我正在使用 openJDK 运行时的 Windows 等价物在 Windows 机器上开发它,它运行良好。运行容器时,我得到以下输出
知道如何让基于 OpenJFX11 的 Java 应用程序在 Docker 中工作吗?
天涯尽头无女友
相关分类