2016-07-08 5 views
1

Je suis en train de mettre à jour un projet de grails 2.4.0 à 2.5.4 peu de temps après l'avoir mis à jour de 2.3.7 -> 2.4.0 et j'obtiens cette erreur .Grails upgrade 2.4.0 -> 2.5.4 cache plugin issue

[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) 

J'ai essayé uprading plugin chache de 1.1.3 à 1.1. {4,5,6,7,8} mais tout donne la même erreur. Je serais heureux pour une idée, où pourrait reposer le problème.

+0

Cela me surprend. En général le cache 1.1.8 est compatible avec Grails 2.5.4. S'il vous plaît déposer un problème à https://github.com/grails-plugins/grails-cache/issues, fournir un lien vers un exemple d'application qui démontre le problème, et nous pouvons résoudre ce problème. Merci pour les commentaires. –

+0

Il n'est pas clair pourquoi Grails 2.4.0 est impliqué, mais 1.1.6 du plugin de cache est la version que nous avons livré avec 2.4.0. Je ne sais pas s'il y a des incompatibilités avec 1.1.7 ou non. –

+0

Nous vous remercions de votre aide. :) Je suis juste un étudiant et nouveau cadre de grails. Je vais mettre à jour cette application de 2.5.4 à 3.1.9, alors restez à l'écoute de mon canal stackoverflow. :) –

Répondre

1

Je pense que le déplacement du plugin à 1.1.8 et la suppression du dossier cible + grails clean ont fait l'affaire. Maintenant, je reçois ce genre d'erreurs sur certaines de mes classes domaine

| Warning The [$tt__showOut] action in[cz.ikariera.student.StudentAccountMessageController] accepts a parameterof type [org.springframework.transaction.TransactionStatus]. Interfacetypes and abstract class types are not supported as command objects. This parameter will be ignored.

et certains problèmes plugiciel de ressource et gsp.

Mais le plugin cache est OK.

+0

Le message d'avertissement que vous mentionnez n'a rien à voir avec le plugin cache ou la question d'origine. Cet avertissement est sûr d'ignorer et est le résultat d'un bug dans 2.5.4 qui a été corrigé dans 2.5.5. Voir https://github.com/grails/grails-core/issues/9770 –

0

J'ai eu un problème similaire et pour moi, il a aidé à supprimer le dossier .slcache dans le dossier racine du projet.