Bitbucketpipe道 – mvn干净安装不与JavaFX一起使用

我正在使用Bitbucket Pipelines来build立我们大学的一个项目。

这是我的configuration从bitbucket-pipelines.yml:

image: maven:3.3.9-jdk-8 pipelines: default: - step: script: # Modify the commands below to build your repository. - mvn -f EasyDiet_JavaFX_View/pom.xml clean install 

这里是一些编译错误 – >涉及JavaFX:

 ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[11,19] package javafx.fxml does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[12,28] package javafx.scene.control does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[13,27] package javafx.scene.layout does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[14,27] package javafx.scene.layout does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[15,20] package javafx.stage does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[27,13] cannot find symbol symbol: class VBox location: class at.fhv.easyDiet.teamC.presentation.patientFile.PatientFileController [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[29,13] cannot find symbol symbol: class BorderPane location: class at.fhv.easyDiet.teamC.presentation.patientFile.PatientFileController [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[336,12] cannot find symbol symbol: class Stage location: class at.fhv.easyDiet.teamC.presentation.patientFile.PatientFileController 

在这里,一些构build失败的输出:

  INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 12.828 s [INFO] Finished at: 2016-10-19T10:18:57+00:00 [INFO] Final Memory: 19M/282M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile) on project easydiet-view: Compilation failure: Compilation failure: [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[11,19] package javafx.fxml does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[12,28] package javafx.scene.control does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[13,27] package javafx.scene.layout does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[14,27] package javafx.scene.layout does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[15,20] package javafx.stage does not exist [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[27,13] cannot find symbol [ERROR] symbol: class VBox [ERROR] location: class at.fhv.easyDiet.teamC.presentation.patientFile.PatientFileController [ERROR] /opt/atlassian/pipelines/agent/build/EasyDiet_JavaFX_View/src/at/fhv/easyDiet/teamC/presentation/patientFile/PatientFileController.java:[29,13] cannot find symbol [ERROR] symbol: class BorderPane [ERROR] location: class at.fhv.easyDiet.teamC.presentation.patientFile.PatientFileController 

如果我在我的Mac上本地构build它,它工作正常,但如果我尝试使用Bitbucketpipe道我只会得到这些错误。 我已经尝试使用默认的maven:3.3.3图像。

如何在Bitbucketpipe道中构buildJavaFX?

这对我工作:

 image: maven:3-jdk-8 pipelines: default: - step: script: # Modify the commands below to build your repository. - apt-get update - apt-get install -y openjfx - mvn clean install