从2.3.7-> 2.4.0升级后不久,我将一个项目从grails 2.4.0升级到2.5.4,并且出现此错误。
[groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
[groovyc] Compile error during compilation with javac.
[groovyc] /home/michal/Desktop/ikariera/ikariera/target/work/plugins/cache-1.1.7/src/java/grails/plugin/cache/GrailsAnnotationCacheOperationSource.java:220: error: no suitable method found for parseCacheAnnotations(AnnotatedElement)
[groovyc] Collection<CacheOperation> annOps = annotationParser.parseCacheAnnotations(ae);
[groovyc] ^
[groovyc] method CacheAnnotationParser.parseCacheAnnotations(Class<?>) is not applicable
[groovyc] (argument mismatch; AnnotatedElement cannot be converted to Class<?>)
[groovyc] method CacheAnnotationParser.parseCacheAnnotations(Method) is not applicable
[groovyc] (argument mismatch; AnnotatedElement cannot be converted to Method)
[groovyc] Note: /home/michal/Desktop/ikariera/ikariera/target/work/plugins/scaffolding-2.1.0/src/java/org/codehaus/groovy/grails/scaffolding/AbstractGrailsTemplateGenerator.java uses or overrides a deprecated API.
[groovyc] Note: Recompile with -Xlint:deprecation for details.
[groovyc] 1 error
[groovyc]
[groovyc]
| Compiling 232 source files.
| Error Compilation error: startup failed:
Compile error during compilation with javac.
/home/michal/Desktop/ikariera/ikariera/target/work/plugins/cache-1.1.7/src/java/grails/plugin/cache/GrailsAnnotationCacheOperationSource.java:220: error: no suitable method found for parseCacheAnnotations(AnnotatedElement)
Collection<CacheOperation> annOps = annotationParser.parseCacheAnnotations(ae);
^
method CacheAnnotationParser.parseCacheAnnotations(Class<?>) is not applicable
(argument mismatch; AnnotatedElement cannot be converted to Class<?>)
method CacheAnnotationParser.parseCacheAnnotations(Method) is not applicable
(argument mismatch; AnnotatedElement cannot be converted to Method)
我尝试将chache插件从1.1.3升级到1.1。{4,5,6,7,8},但一切都给出了相同的错误。我很高兴有一个主意,将问题放在哪里。
最佳答案
我认为将插件移至1.1.8并删除目标文件夹+ grails clean可以解决问题。
现在我在某些域类上遇到这种错误| Warning The [$tt__showOut] action in
[cz.ikariera.student.StudentAccountMessageController] accepts a parameter
of type [org.springframework.transaction.TransactionStatus]. Interface
types and abstract class types are not supported as command objects. This parameter will be ignored.
以及一些基于资源插件和基于gsp的问题。
但是缓存插件还可以。
关于grails - Grails升级2.4.0-> 2.5.4缓存插件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38273256/