所以我们有一些用groovy编写的单元测试。我们有Groovy Eclipse插件,我们有gmaven,但问题是maven eclipse插件不会自动添加src / test / groovy目录作为源目录。所以,我参与了build-helper插件来添加源目录,但是问题变成了源目录 - 在eclipse中,过滤器将包含** / * .java并排除其他所有内容,这导致了groovy eclipse插件困惑。我已经设法通过使用构建助手来使用正确的.groovy文件过滤器添加测试资源来解决问题。显然,如果我们决定在项目中使用groovy类,那么这里的问题是不可用的 - .groovy类将包含在.jar文件中。
我该如何解决这个问题?
答案 0 :(得分:2)
我倾向于使用govven支持groovy-compiler-plugin,它为你编写groovy编译器。使用gmaven我遇到了太多奇怪的编译器错误,其中存根缺失等等。你仍然需要builder-helper,而Groovy Eclipse插件有助于将源链接到编译类,但这在eclipse中工作之间完美无缺。并在命令行。
<properties>
<groovy.version>1.8.0</groovy.version>
<groovy.provider>1.7</groovy.provider>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/main/groovy</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-test-source</id>
<phase>generate-test-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/groovy</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
<source>1.6</source>
<target>1.6</target>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>1.8.0-03</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.5.1</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
</build>
答案 1 :(得分:0)
我们已经为Groovy-Eclipse创建了m2eclipse集成。首先,您必须安装m2eclipse:
http://m2eclipse.sonatype.org/sites/m2e
然后您可以安装Groovy-Eclipse集成,您可以在此处获取:
http://dist.codehaus.org/groovy/distributions/greclipse/snapshot/e3.6/
或者这里是伽利略:
http://dist.codehaus.org/groovy/distributions/greclipse/snapshot/e3.5/
请注意,m2eclipse集成仍处于测试阶段,我们非常感谢用户提供的反馈,以了解它对它们的效果。
答案 2 :(得分:0)
我碰巧检查了maven eclipse插件页面,结果发现这类问题已经解决了: http://maven.apache.org/plugins/maven-eclipse-plugin/examples/specifying-source-path-inclusions-and-exclusions.html
我最后只是使用build-helper-plugin来指定其他源,并将.groovy文件添加到源包含的eclipse插件中。