容器错误:包 javafx.util 不存在

我正在实施一个 JavaFX 应用程序并使用Cirrus-CI为 Github 进行持续集成。

这是我的构建配置.cirrus.yml

container:
  image: maven:3.6.1-jdk-8build_task:
  build_script: mvn clean compile test sonar:sonar

在构建期间,它在从已安装的 JDK 中查找 JavaFX 库时遇到问题(这些错误日志行只是示例,还有更多):

[ERROR] /tmp/cirrus-ci-build/src/main/java/com/github/martinfrank/catansettler/gui/ControllerFactory.java:[4,19] package javafx.util does not exist
[ERROR] /tmp/cirrus-ci-build/src/main/java/com/github/martinfrank/catansettler/gui/alert/GameSetupAlertController.java:[6,28] package javafx.scene.control does not exist

笔记:

当然,在我本地的 DevEnvirnment 中它正在工作......

问题:

包含带有 JavaFx 的 JDK 的正确设置(Cirrus 构建定义)是什么?(或者我在这里做错了什么?)


慕丝7291255
浏览 101回答 1
1回答

BIG阳

您需要安装openjfx. 你可以这样做:container:  image: maven:3.6.1-jdk-8build_task:  install_script:    - apt-get update     - apt-get install --no-install-recommends -y openjfx  build_script: mvn clean compile test sonar:sonar您还可以考虑使用Dockerfile 作为 CI 环境功能并创建一个像这样的 Dockerfile(.ci/Dockerfile在您的存储库中使用相对路径):FROM maven:3.6.1-jdk-8RUN apt-get update \    && apt-get install --no-install-recommends -y openjfx \    && apt-get clean \    && rm -f /var/lib/apt/lists而你在你的.cirrus.yml:build_task:  container:    dockerfile: .ci/Dockerfile  build_script: mvn clean compile test sonar:sonar这将减少执行脚本所需的 30-40 秒install。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java