2013-09-25 21 views
8

Mam projektu Java FX i używam maven 3.0.5 do kompilacji. Kiedy uruchamiam pakiet/install mvn, projekt zawodzi i narzeka, że ​​pakiet javafx. * nie istnieje. Javafx jest spakowany w Javie 1.7 do mojego zrozumienia, więc nie ma sensu, aby kompilacja tego nie wykryła. Kiedy skompiluję go w ramach mojego IDE (intellij), działa dobrze i po tym moja instalacja maven również pomyślnie się instaluje, jednak nie chcę, aby przejść przez IDE za każdym razem, gdy robię czystą instalację. jakieś pomysły?Projekt Javafx nie kompiluje się z maven

tutaj jest mój pom:

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <parent> 
     <artifactId>thenaglecode</artifactId> 
     <groupId>com.thenaglecode</groupId> 
     <version>1.0.0.Pre-Alpha</version> 
    </parent> 
    <modelVersion>4.0.0</modelVersion> 

    <artifactId>system-setup</artifactId> 

    <dependencies> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-api</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.commons</groupId> 
      <artifactId>commons-vfs2</artifactId> 
      <version>2.0</version> 
     </dependency> 
     <dependency> 
      <groupId>commons-io</groupId> 
      <artifactId>commons-io</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.commons</groupId> 
      <artifactId>commons-lang3</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>commons-collections</groupId> 
      <artifactId>commons-collections</artifactId> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-resources-plugin</artifactId> 
       <version>2.6</version> 
       <configuration> 
        <includeEmptyDirs>true</includeEmptyDirs> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
      </plugin> 
      <plugin> 
       <groupId>com.akathist.maven.plugins.launch4j</groupId> 
       <artifactId>launch4j-maven-plugin</artifactId> 
       <version>1.5.2</version> 
       <executions> 
        <execution> 
         <phase>package</phase> 
         <goals> 
          <goal>launch4j</goal> 
         </goals> 
         <configuration> 
          <headerType>gui</headerType> 
          <jre> 
           <path>C:\Program Files\Java\jre7</path> 
           <minVersion>1.7.0</minVersion> 
           <initialHeapSize>128</initialHeapSize> 
           <maxHeapSize>1024</maxHeapSize> 
          </jre> 
          <jar>${project.build.directory}/${project.build.finalName}.jar</jar> 
          <outfile>${project.build.directory}/systemsetup.exe</outfile> 
          <classPath> 
           <mainClass>com.thenaglecode.Start</mainClass> 
          </classPath> 
          <singleInstance> 
           <mutexName>thenaglecode-system-setup</mutexName> 
          </singleInstance> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

I tu jest moim dzienniku:

[ERROR] COMPILATION ERROR : 
[INFO] ------------------------------------------------------------- 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/CommandHelper.java:[3,26] package javafx.application does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/ListAndOptionsController.java:[3,26] package javafx.beans.value does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/ListAndOptionsController.java:[4,26] package javafx.beans.value does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/ListAndOptionsController.java:[5,26] package javafx.collections does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/ListAndOptionsController.java:[6,20] package javafx.event does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/ListAndOptionsController.java:[7,20] package javafx.event does not exist 
... 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/Context.java:[3,28] package javafx.scene.control does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/ServiceMuncher.java:[3,31] package com.sun.istack.internal does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/TypeInfo.java:[3,31] package com.sun.istack.internal does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/NumericOnlyTextFieldChangeListener.java:[3,31] package com.sun.istack.internal does not exist 
[ERROR] /C:/Users/Macindows/IdeaProjects/thenaglecode/system-setup/src/main/java/com/thenaglecode/NumericOnlyTextFieldChangeListener.java:[4,26] package javafx.beans.value does not exist 
[ERROR] -> [Help 1] 
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. 
[ERROR] Re-run Maven using the -X switch to enable full debug logging. 
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles: 
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException 

Process finished with exit code 1 

Dziękuję za pomoc.

+0

to irytujące: http://stackoverflow.com/questions/9294646/javafx-2-as-a-maven-dependency - współpracuje z JavaFX 8 .. – assylias

+0

możliwy duplikat projektu [Maven z JavaFX (z plikiem jar w \ 'lib \ ')] (http://stackoverflow.com/questions/15278215/maven-project-with-jav afx-with-jar-file-in-lib) – jewelsea

Odpowiedz

7

umieszczając to w zależnościach (w zależności od tego, gdzie jest twój JDK) pomoże kompilacji zależność, jednak powinieneś zastąpić ją zmienną że użytkownik może określić w swoich settings.xml lub systemu Maven właściwości:

<dependency> 
     <groupId>com.oracle</groupId> 
     <artifactId>javaFX</artifactId> 
     <version>2.2</version> 
     <scope>system</scope> 
     <systemPath>C:\Program Files\Java\jre7\lib\jfxrt.jar</systemPath> 
    </dependency> 

zobaczyć Maven project with JavaFX (with jar file in `lib`) więcej szczegółów, dlaczego

Powiązane problemy