有两个java项目A和B,构建引擎是gradle.
这是一个多项目,而A依赖于B。
答: build.gradle
...
dependencies {
compile project (':B')
}
...B在src/main/java中有核心代码,src/test/java中有测试代码。在src/test/java中还有一些测试基础结构类,比如加载测试数据。
gradle :B:test工作得很好
alright中的测试使用but中的测试基础结构类,这对于eclipse来说是可以的,但对于gradle则不是这样。因为构建的jar文件依赖于Because,所以只包含来自src/main/java的类。
我们得到了错误:
com.aaa.SomeClassFromAAAA.java:42: error: cannot find symbol
import com.bbb.InfrastructureTestClassFromBBB;解决办法是什么?
发布于 2015-06-09 08:16:16
这是讨论在梯度论坛这里。这个想法是用您的测试类构建JAR,并使它对您的A项目可见。还有一些说明,为什么这对IDEs来说是困难的。
另一种方法是将测试基础结构类移动到另一个项目的主要来源。这假设它们不依赖于A的主要来源。在Gradle的代码库(int*-test*文件夹在https://github.com/gradle/gradle/tree/master/subprojects中)中可以看到类似的内容。
https://stackoverflow.com/questions/30725201
复制相似问题