2017-12-22 4 views
0

Maven을 사용하여 javaFX 응용 프로그램을 만들었습니다. 문제는 maven에서 생성 된 javaFX jar 파일에 종속성이 포함되어 있지 않다는 것입니다. 내가 "빌드 항아리"단지를 목표를 사용하여 항아리를 빌드 할 때javaFX jar에 포함되지 않은 라이브러리

<plugin> 
    <groupId>com.zenjava</groupId> 
    <artifactId>javafx-maven-plugin</artifactId> 
    <version>${javafx.plugin.version}</version> 
    <configuration> 
     <vendor>Vendor</vendor> 
     <mainClass>org.bsh.generator.App</mainClass> 
     <jarFileName>CSVGenerator</jarFileName> 
    </configuration> 
    <executions> 
     <execution> 
      <id>create-jfxjar</id> 
      <phase>package</phase> 
      <goals> 
       <goal>build-jar</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 

:

<dependency> 
    <groupId>com.oracle</groupId> 
    <artifactId>javafx</artifactId> 
    <version>8.0.151</version> 
    <scope>system</scope> 
    <systemPath>C:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\jfxrt.jar</systemPath> 
</dependency> 

나는 또한 자바 FX 플러그인을 포함했다 :

나는 자바 FX 의존성이 방법을 포함했다 생성 된 다른 종속성을 포함하지 않습니다. 어떤 도움을 주시겠습니까?

+1

종속성으로 JavaFX를 포함 할 필요는 없습니다. Java 8 이상에서는 JDK의 일부입니다. –

+0

Okey하지만 이것은 문제가되지 않습니다. – Nana30

+0

"다른 종속성"이 구체적으로 의미하는 바를 자세히 설명해 주시겠습니까? 어느 것? 전체 pom 파일을 포함하도록 게시물을 편집 할 수 있습니까? – avojak

답변

0

종속 범위는 system으로 간주됩니다. 이는 고의적입니다. 유효 범위/라이브러리 범위가 providedruntime 인 경우에만 플러그인에서이를 준수합니다.

면책 조항 : 저는 javafx-maven-plugin의 관리자입니다.

+0

글쎄, 난 메이븐 어셈블리 플러그인을 사용하여 솔루션을 발견했다. 그것은 생성 된 항아리 안에 모든 dependecies가 포함되어 있습니다. – Nana30

관련 문제