2015-11-11 209 views
1

我想在Eclipse中編譯一個GWT項目。codehaus.mojo gwt-maven-plugin:項目無法編譯

我使用gwt-maven-plugin原型創建了項目。我的POM看起來likt這樣的:

<?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/maven-v4_0_0.xsd"> 

    <modelVersion>4.0.0</modelVersion> 
    <groupId>de.my.stuff</groupId> 
    <artifactId>GWTAppProject</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>GWT Maven Archetype</name> 

    <properties> 
     <gwtVersion>2.7.0</gwtVersion> 

     <maven.compiler.source>1.8</maven.compiler.source> 
     <maven.compiler.target>1.8</maven.compiler.target> 

     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 

    </properties> 

    <dependencyManagement> 
     <dependencies> 
      <dependency> 
       <groupId>com.google.gwt</groupId> 
       <artifactId>gwt</artifactId> 
       <version>${gwtVersion}</version> 
       <type>pom</type> 
       <scope>import</scope> 
      </dependency> 
     </dependencies> 
    </dependencyManagement> 

    <dependencies> 
     <dependency> 
      <groupId>com.google.gwt</groupId> 
      <artifactId>gwt-servlet</artifactId> 
      <scope>runtime</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.google.gwt</groupId> 
      <artifactId>gwt-user</artifactId> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.google.gwt</groupId> 
      <artifactId>gwt-dev</artifactId> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.12</version> 
      <scope>test</scope> 
     </dependency> 
    </dependencies> 

    <build> 
     <outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/classes</outputDirectory> 

     <plugins> 

      <plugin> 
       <groupId>org.codehaus.mojo</groupId> 
       <artifactId>gwt-maven-plugin</artifactId> 
       <version>2.7.0</version> 
       <executions> 
        <execution> 
         <goals> 
          <goal>compile</goal> 
          <goal>test</goal> 
          <goal>generateAsync</goal> 
         </goals> 
        </execution> 
       </executions> 
       <configuration> 
        <runTarget>GWTApp.html</runTarget> 
        <modules> 
         <module>de.my.stuff.GWTAppProject.GWTApp</module> 
        </modules> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 


</project> 

當我運行該mvn clean install -U,我得到以下錯誤:

[ERROR] Failed to execute goal org.codehaus.mojo:gwt-maven-plugin:2.7.0:compile (default) on project GWTAppProjekt: Command [ 
[ 
[ERROR] C:\Java\JDK\jre\bin\java -Xmx512m -classpath D:\Workspaces\Eclipse\Eclipse_SE\GWTAppProject\target\GWTAppProject-0.0. 
1-SNAPSHOT\WEB-INF\classes;D:\Workspaces\Eclipse\Eclipse_SE\GWTAppProject\src\main\java;D:\Workspaces\Eclipse\Eclipse_SE\GWTA 
ppProjekt\target\generated-sources\gwt;D:\Maven_Local_Repository\com\google\gwt\gwt-user\2.7.0\gwt-user-2.7.0.jar;D:\Maven_Lo 
cal_Repository\javax\validation\validation-api\1.0.0.GA\validation-api-1.0.0.GA.jar;D:\Maven_Local_Repository\javax\validatio 
n\validation-api\1.0.0.GA\validation-api-1.0.0.GA-sources.jar;D:\Maven_Local_Repository\com\google\gwt\gwt-dev\2.7.0\gwt-dev- 
2.7.0.jar;D:\Maven_Local_Repository\org\ow2\asm\asm\5.0.3\asm-5.0.3.jar;D:\Maven_Local_Repository\org\ow2\asm\asm-util\5.0.3\ 
asm-util-5.0.3.jar;D:\Maven_Local_Repository\org\ow2\asm\asm-tree\5.0.3\asm-tree-5.0.3.jar;D:\Maven_Local_Repository\org\ow2\ 
asm\asm-commons\5.0.3\asm-commons-5.0.3.jar;D:\Maven_Local_Repository\com\google\gwt\gwt-user\2.7.0\gwt-user-2.7.0.jar;D:\Mav 
en_Local_Repository\javax\validation\validation-api\1.0.0.GA\validation-api-1.0.0.GA.jar;D:\Maven_Local_Repository\javax\vali 
dation\validation-api\1.0.0.GA\validation-api-1.0.0.GA-sources.jar;D:\Maven_Local_Repository\com\google\gwt\gwt-dev\2.7.0\gwt 
-dev-2.7.0.jar;D:\Maven_Local_Repository\org\ow2\asm\asm\5.0.3\asm-5.0.3.jar;D:\Maven_Local_Repository\org\ow2\asm\asm-util\5 
.0.3\asm-util-5.0.3.jar;D:\Maven_Local_Repository\org\ow2\asm\asm-tree\5.0.3\asm-tree-5.0.3.jar;D:\Maven_Local_Repository\org 
\ow2\asm\asm-commons\5.0.3\asm-commons-5.0.3.jar com.google.gwt.dev.Compiler -logLevel INFO -style OBF -war D:\Workspaces\Ecl 
ipse\Eclipse_SE\GWTAppProject\target\GWTAppProject-0.0.1-SNAPSHOT -localWorkers 8 -XfragmentCount -1 -sourceLevel 1.8 -gen D: 
\Workspaces\Eclipse\Eclipse_SE\GWTAppProject\target\.generated de.my.stuff.GWTAppProject.GWTApp 
[ERROR] ]] failed with status 1 

我已經在這裏看到上的其他職位,但沒有他們的解決方案的工作了我。

這裏有什麼錯誤?

回答

5

GWT 2.7不支持Java 8源「級」。設置maven.compiler.sourcemaven.compiler.target1.7或者可能的gwt-maven-pluginsourceLevel1.7(如果您將服務器和客戶端代碼混合到同一個Maven模塊中 - 想法 - 並希望在服務器端使用Java 8),或使用GWT 2.8.0-SNAPSHOT(2.8.0-beta-1正在進行煙霧測試,應在未來幾天內發佈)

順便說一下,您的日誌中應該有一個更明確的錯誤,關於不支持的-sourceLevel 1.8值。

+0

謝謝,這確實是問題! – user3813234