【发布时间】:2014-02-15 01:45:47
【问题描述】:
我正在使用 Maven 构建我的 GWT 项目。我正在使用Gin 生成一些样板代码:
package com.lokur.motd.client.events;
import com.gwtplatform.dispatch.annotation.GenEvent;
@GenEvent
public class EditorChange {
}
但是,当我运行“mvn clean install”命令时,Maven 正在target/classes/com/lokur/motd/client/events 目录中生成与 Gin 相关的 Java 源代码。为什么有.java 文件进入classes 目录?
我正在使用下面的Maven插件在target/generated-sources文件夹中生成Java源代码:
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>2.0.5</version>
<executions>
<execution>
<id>process</id>
<goals>
<goal>process</goal>
</goals>
<phase>generate-sources</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>target/generated-sources/apt</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
在这种情况下,将生成两个EditorChangeEvent.java 文件:一个在generated-sources 文件夹中; target/classes/<..package..> 文件夹中的另一个。
因此,导致以下编译失败:
duplicate class:
com.lokur.motd.client.events.EditorChangeEvent
【问题讨论】:
标签: java maven gwt maven-2 gwt-gin