Grails 为什么我得到groovy.lang.MissingPropertyException作为跟踪?
在groovy文件中,我导入了JARGrails 为什么我得到groovy.lang.MissingPropertyException作为跟踪?,grails,logging,groovy,log4j,Grails,Logging,Groovy,Log4j,在groovy文件中,我导入了JARgroovy.util.logging.Log4j和 org.apache.log4j.Level用于使用@log4j,我在构造函数中将日志级别设置为:log.setLevel(Level.TRACE) 现在在执行脚本时,我得到了groovy.lang.MissingPropertyException:没有这样的属性:TRACE for class:org.apache.log4j.Level,但是当我将TRACE替换为INFO时,它成功执行 那么原因是什么呢
groovy.util.logging.Log4j
和
org.apache.log4j.Level
用于使用@log4j
,我在构造函数中将日志级别设置为:log.setLevel(Level.TRACE)
现在在执行脚本时,我得到了groovy.lang.MissingPropertyException:没有这样的属性:TRACE for class:org.apache.log4j.Level
,但是当我将TRACE替换为INFO时,它成功执行
那么原因是什么呢?您的应用程序中是否使用了多版本的log4j? [log4j-1.2.16.jar&降低到不支持跟踪的log4j-1.2.12.jar]
在这种情况下,groovy脚本可能考虑了较低版本。如果您在LINUX中执行脚本,请在末尾将$groovy_HOME/lib/log4j-1.2.16.jar附加到$CLASSPATH。这很有效 您是否可以尝试静态导入级别
import static org.apache.log4j.Level.*
然后设置为log.Level=TRACE
您使用的是哪个版本的org.apache.log4j
?如果您检查,您可以看到TRACE
是可用的,因为:1.2.12我正在使用log4j-1.2.16.jar
,所以在这个项目中可以使用TRACE。它不起作用,显示出相同的问题。这听起来像是项目中的一个问题。如果您可以分享一个演示该问题的示例,那么进行故障排除就很容易了。