我想用一个类型为
org.slf4j.Logger
的对象来替换自动注入的log
对象,后者的类型为org.apache.commons.logging.Log
,以便我可以正确地使用Logback。因此,我需要创建一个...Transformer
类(用Java编写)-这是我从“grails-user”邮件列表中得到的Graeme Rocher的建议。我也知道我必须将这个...Transformer
类打包在插件中,并使它成为一个*.jar档案,然后将其加载到插件的lib/
文件夹中。但我想我在做错了些什么,因为我已经有了这个类,还有一个包含MANIFEST.MF
文件的META-INF
文件夹,以及另一个名为services
的文件夹,其中包含以下文件:org.codehaus.groovy.transform.ASTTransformation
,该文件只包含一个字符串: ...Transformer
类的规范名称。现在,如果我尝试运行grails package-plugin
命令,控制台会出现java.lang.ClassNotFoundException
错误。从堆栈跟踪中截取部分如下:| Packaging Grails application...
| Error Fatal error during compilation org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Could not instantiate global transform class my.package.ast.LoggingTransformation specified at jar:file:/C:/Source/MyGrailsAST/lib/replace-logging-logback-ast.jar!/META-INF/services/org.codehaus.groovy.transform.ASTTransformation because of exception java.lang.ClassNotFoundException: my.package.ast.LoggingTransformation
1 error
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Could not instantiate global transform class my.package.ast.LoggingTransformation specified at jar:file:/C:/Source/MyGrailsAST/lib/replace-logging-logback-ast.jar!/META-INF/services/org.codehaus.groovy.transform.ASTTransformation because of exception java.lang.ClassNotFoundException: my.package.ast.LoggingTransformation
有没有人在处理 AstTransformer
方面有 Grails 插件的经验,能给我一些建议?是否有一篇很好的教程我还没有看过?
请告诉我 ;)