Grails测试战争创建错误

时间:2013-05-13 06:41:17

标签: eclipse maven grails maven-2 grails-2.0

我正在使用Grails 2.1.4和Maven Integration。

我为Grails项目创建了pom文件。我正在从Eclipse运行这样的目标:

mvn -Dgrails.env=test package

我收到这样的错误:

Fatal error forking Grails JVM: java.lang.reflect.InvocationTargetException
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
    at org.grails.launcher.GrailsLauncher.launch(GrailsLauncher.java:150)
    at org.grails.maven.plugin.tools.ForkedGrailsRuntime.main(ForkedGrailsRuntime.java:168)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.grails.launcher.GrailsLauncher.launch(GrailsLauncher.java:144)
    ... 1 more
Caused by: java.lang.IllegalStateException: User input is not enabled, cannot obtain input stream
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
    at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:77)
    at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:102)
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:54)
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:182)
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:194)
    at gant.Gant$_dispatch_closure5.doCall(Gant.groovy:391)

2 个答案:

答案 0 :(得分:1)

您看到的错误可能会偶尔发生,特别是在Grails 2.1.x中。

运行命令( mvn -Dgrails.env = test package )几次,你会发现你的问题是间歇性的,无法一直复制。

pom.xml 中将fork选项设置为false似乎是“修复”它,在大多数情况下。它可能是2.1.x版本的Grails错误。

我还没有在较新的Grails版本中看到这个问题。

答案 1 :(得分:0)

将Grails从2.2.1升级到2.2.4后,我遇到了同样的错误。 问题是插件目录没有被清除,并且与新的插件冲突。 解决方案是删除项目root / plugins目录中的所有插件,然后运行任何grails或maven命令以重新安装新的插件集。