如何将另一个源目录添加到maven gwt编译插件?我有一些生成的代码需要包含在编译中。
如果我不能,人们建议怎么解决这个问题?
答案 0 :(得分:3)
我不知道您是否已查看此内容,但您可以使用compileSourcesArtifacts属性将生成的代码包含为外部库。有一篇关于在GWT Plugin Documentation中进行设置的文章。但是,只有在您不需要将外部代码包含在Web应用程序中时,这才有效。
每当我们过去需要这样做时,我们使用maven-resources-plugin's copy-resources goal将源代码复制到我们的主包结构中,并配置maven-clean-plugin to remove the files。因为gwt编译发生在build lifecycle的prepare-package
阶段,所以你需要将源文件复制到之前的目录中(我们将它们绑定到process-classes
)。
答案 1 :(得分:2)
我将i18n的目标放在了generate-resources阶段并且运行良好。它将在gwt编译之前执行。
<plugins>
<!-- GWT Maven Plugin-->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>2.5.0-rc1</version>
<dependencies>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${gwtVersion}</version>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-dev</artifactId>
<version>${gwtVersion}</version>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-servlet</artifactId>
<version>${gwtVersion}</version>
</dependency>
</dependencies>
<executions>
**<execution>
<id>generate-i18n</id>
<phase>generate-resources</phase>
<goals>
<goal>i18n</goal>
</goals>
</execution>**
<execution>
<phase>prepare-package</phase>
<goals>
<goal>resources</goal>
<goal>compile</goal>
<goal>test</goal>
<goal>generateAsync</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- your config -->
</configuration>
</plugin>
答案 2 :(得分:0)
这是有效的,因为您生成的输出是在普通源文件夹中生成的。 但问题是如何添加额外的源文件夹。