У меня есть Java-программа, которую я написал.Основные вещи включают OpenJDK8, Maven и JavaFX.Программа строит и работает самостоятельно.Я хочу поместить его в контейнер Docker, но у меня возникают проблемы с его сборкой.
Вот мой Dockerfile:
FROM openjdk:8-jdk
FROM maven:3.3-jdk-8-onbuild
RUN apt-get update && apt-get install -y --no-install-recommends openjfx && rm -rf /var/lib/apt/lists/*
CMD ["java","-jar","target/"CodeDemo-1.0-SNAPSHOT.jar"]
Вот что я запустил, чтобы построить контейнер:
sudo docker build -t java-maven-code-demo .
Вот ошибка, которую я продолжаю жаловаться на отсутствие javafxpackager:
Не удалось выполнить цель org.codehaus.mojo: exec-maven-plugin: 1.2.1: exec (unpack-зависимости) в проекте CodeDemo: Ошибка выполнения команды.Не удается запустить программу "/usr/lib/jvm/java-8-openjdk-amd64/jre/../bin/javafxpackager" (в каталоге "/ usr / src / app"): ошибка = 2, такого файла или каталога нет-> [Помощь 1]
У меня есть все файлы в каталоге CodeDemo.На верхнем уровне у меня есть src, target, Dockerfile, pom.xml.В target у меня есть скомпилированный jar.
Я сбит с толку из-за ошибки, потому что я думал, что Java 8 OpenJDK поставляется с JavaFX.Итак, если я использую OpenJDK, я должен получить то, что мне нужно для JavaFX ( аналогичный вопрос по GitHub - решение все равно выдало ошибку).
Может кто-нибудь указать мне, что я могу делать неправильно?Что-то еще, что я должен сделать, чтобы получить надлежащие библиотеки?