在Grails2.5中使用BIRT 3.7时返回NoSuchMethodError
我们在Grails应用程序中使用BIRT 3.7已有3年了。我们决定从Grails 2.3.11升级到2.5,我们的BIRT报告现在出现以下错误:在Grails2.5中使用BIRT 3.7时返回NoSuchMethodError,grails,birt,Grails,Birt,我们在Grails应用程序中使用BIRT 3.7已有3年了。我们决定从Grails 2.3.11升级到2.5,我们的BIRT报告现在出现以下错误: SEVERE: Error happened while running the report. java.lang.NoSuchMethodError: org.mozilla.javascript.Parser.parse(Ljava/lang/String;Ljava/lang/String;I)Lorg/mozilla/javascrip
SEVERE: Error happened while running the report.
java.lang.NoSuchMethodError: org.mozilla.javascript.Parser.parse(Ljava/lang/String;Ljava/lang/String;I)Lorg/mozilla/javascript/ScriptOrFnNode;
at org.eclipse.birt.core.data.ExpressionParserUtility.parse(ExpressionParserUtility.java:184)
at org.eclipse.birt.core.data.ExpressionParserUtility.compileColumnExpression(ExpressionParserUtility.java:77)
.....
我假设Grails中发生了一些变化。该报告在Grails2.3.11中运行良好。我通过在
BuildConfig.groovy
中更改以下行来解决它:
compile ":asset-pipeline:2.3.9"
为此:
compile(":asset-pipeline:2.3.9") {
excludes 'rhino'
}
我通过更改
BuildConfig.groovy
中的以下行解决了这个问题:
compile ":asset-pipeline:2.3.9"
为此:
compile(":asset-pipeline:2.3.9") {
excludes 'rhino'
}
升级grails时,通常也需要升级插件。我建议升级到birt 4.3.0。从那里开始,谢谢你的建议。事实证明这不是BIRT/Grails的问题。这是一个BIRT/资产问题。很高兴你@DennLindy解决了它,但是怎么解决呢??!!!升级grails时,通常也需要升级插件。我建议升级到birt 4.3.0。从那里开始,谢谢你的建议。事实证明这不是BIRT/Grails的问题。这是一个BIRT/资产问题。很高兴你@DennLindy解决了它,但是怎么解决呢??!!!