我尝试运行“gradle test”,并收到错误
我的测试是
class HelperTest extends ro.gd.Test {
Plugin o;
void setUp() {
o = new Plugin();
}
void testGetIdeaDeps() {
def r = o.ideaDeps
asrHaveVal r
}
}
当我进行gradle测试时,它会加注:
junit.framework.AssertionFailedError: Exception in constructor: testGetIdeaDeps (java.lang.NoClassDefFoundError: Could not initialize class groovy.lang.GroovySystem
at org.codehaus.groovy.reflection.ClassInfo.isValidWeakMetaClass(ClassInfo.java:221)
at org.codehaus.groovy.reflection.ClassInfo.getMetaClassForClass(ClassInfo.java:191)
at org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:236)
at ro.gd.idea.HelperTest.$getStaticMetaClass(HelperTest.groovy)
at ro.Test.<init>(Test.groovy)
at ro.gd.Test.<init>(Test.groovy)
at ro.gd.idea.HelperTest.<init>(HelperTest.groovy)
...
Here是我的完整代码
答案 0 :(得分:1)
我解决了这个问题。原因是&#34; groovy.lang.GroovyRuntimeException:冲突的模块版本&#34;,详细信息,以下是我的build.gradle
compile 'org.codehaus.groovy:groovy-all:+'
compile gradleApi()
我猜gradleApi()将自动&#34;编译localGroovy()&#34;,这个groovy版本是2.3.6,但最新版本是2.4.3
我在一个测试报告中找到此错误消息
解决方案是指定groovy版本,如下面的
compile 'org.codehaus.groovy:groovy-all:2.3.6'
并使用&#39; gradle依赖项检查您的常规版本| grep groovy&#39;