我想在 Eclipse 中编译一个 GWT 项目。
我使用 gwt-maven-plugin 原型(prototype)创建了项目。我的 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/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
我看过其他关于 SO 的帖子,但他们的解决方案都不适合我。
这里有什么错误?
最佳答案
GWT 2.7 不支持 Java 8 源“级别”。将 maven.compiler.source
和 maven.compiler.target
设置为 1.7
,或者可能是 gwt-maven-plugin
的 sourceLevel
到 1.7
(如果你在同一个 Maven 模块中混合服务器和客户端代码——坏主意——并且想在服务器端使用 Java 8) ,或使用 GWT 2.8.0-SNAPSHOT(2.8.0-beta-1 正在冒烟测试中,应该会在未来几天发布)
顺便说一句,您的日志中应该有一个更明确的错误,关于不受支持的 -sourceLevel 1.8
值。
关于java - codehaus.mojo gwt-maven-插件 : project fails to compile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33653943/