2012-03-06 44 views
5

Durante la ejecución de:Gradle + Sonar + Groovy = ¿FALLAR?

gradle sonarAnalyze 

para el proyecto maravilloso, se produce error siguiente: loader violación de restricción: cargador (instancia de org/Codehaus/plexo/classworlds/reino/ClassRealm) previamente iniciado de carga para un tipo diferente con el nombre "groovyjarjarantlr/TokenStream"

¿Cómo puede solucionarse?

versiones utilizadas:

  • Gradle-1,0-hito-8a
  • org.codehaus.groovy: maravilloso: 1.8.4
  • sonar 2.13

StackTrace completo:

18:22:12.249 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':sonarAnalyze' 
18:22:12.249 [ERROR] [org.gradle.BuildExceptionReporter] 
18:22:12.264 [ERROR] [org.gradle.BuildExceptionReporter] FAILURE: Build failed with an exception. 
18:22:12.264 [ERROR] [org.gradle.BuildExceptionReporter] 
18:22:12.280 [ERROR] [org.gradle.BuildExceptionReporter] * What went wrong: 
18:22:12.280 [ERROR] [org.gradle.BuildExceptionReporter] Execution failed for task ':sonarAnalyze'. 
18:22:12.296 [ERROR] [org.gradle.BuildExceptionReporter] > loader constraint violation: loader (instance of org/codehaus/plexus/classworlds/ 
realm/ClassRealm) previously initiated loading for a different type with name "groovyjarjarantlr/TokenStream" 
18:22:12.311 [ERROR] [org.gradle.BuildExceptionReporter] 
18:22:12.311 [ERROR] [org.gradle.BuildExceptionReporter] * Exception is: 
18:22:12.311 [ERROR] [org.gradle.BuildExceptionReporter] org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':sonarAnaly 
ze'. 
18:22:12.327 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execut 
eActions(ExecuteActionsTaskExecuter.java:68) 
18:22:12.327 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execut 
e(ExecuteActionsTaskExecuter.java:46) 
18:22:12.327 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter 
.execute(PostExecutionAnalysisTaskExecuter.java:34) 
18:22:12.342 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.changedetection.CacheLockHandlingTaskExecuter$1.r 
un(CacheLockHandlingTaskExecuter.java:34) 
18:22:12.342 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultCacheAccess$2.create(DefaultCacheAccess. 
java:200) 
18:22:12.342 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(Default 
CacheAccess.java:172) 
18:22:12.358 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(Default 
CacheAccess.java:198) 
18:22:12.358 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultPersistentDirectoryStore.longRunningOper 
ation(DefaultPersistentDirectoryStore.java:111) 
18:22:12.358 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateCacheAcce 
ss.longRunningOperation(DefaultTaskArtifactStateCacheAccess.java:83) 
18:22:12.374 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.changedetection.CacheLockHandlingTaskExecuter.exe 
cute(CacheLockHandlingTaskExecuter.java:32) 
18:22:12.374 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(
SkipUpToDateTaskExecuter.java:55) 
18:22:12.374 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(Va 
lidatingTaskExecuter.java:57) 
18:22:12.389 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter. 
execute(SkipEmptySourceFilesTaskExecuter.java:41) 
18:22:12.389 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.exe 
cute(SkipTaskWithNoActionsExecuter.java:51) 
18:22:12.389 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(Sk 
ipOnlyIfTaskExecuter.java:52) 
18:22:12.405 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.exe 
cute(ExecuteAtMostOnceTaskExecuter.java:42) 
18:22:12.405 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(Ab 
stractTask.java:250) 
18:22:12.405 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultTaskGraphExecuter.executeTask(DefaultTaskGrap 
hExecuter.java:192) 
18:22:12.421 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultTaskGraphExecuter.doExecute(DefaultTaskGraphE 
xecuter.java:177) 
18:22:12.421 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExe 
cuter.java:83) 
18:22:12.421 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExec 
utionAction.java:36) 
18:22:12.436 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.ja 
va:61) 
18:22:12.436 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter 
.java:23) 
18:22:12.436 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter. 
java:67) 
18:22:12.452 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecute 
r$1.run(TaskCacheLockHandlingBuildExecuter.java:31) 
18:22:12.452 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultCacheAccess$1.create(DefaultCacheAccess. 
java:111) 
18:22:12.467 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess. 
java:126) 
18:22:12.467 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess. 
java:109) 
18:22:12.483 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(Defaul 
tPersistentDirectoryStore.java:103) 
18:22:12.483 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateCacheAcce 
ss.useCache(DefaultTaskArtifactStateCacheAccess.java:79) 
18:22:12.483 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecute 
r.execute(TaskCacheLockHandlingBuildExecuter.java:29) 
18:22:12.499 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.ja 
va:61) 
18:22:12.499 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter 
.java:23) 
18:22:12.499 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter. 
java:67) 
18:22:12.499 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecut 
ionAction.java:32) 
18:22:12.514 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.ja 
va:61) 
18:22:12.514 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.ja 
va:54) 
18:22:12.514 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGrad 
leLauncher.java:155) 
18:22:12.530 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLaun 
cher.java:110) 
18:22:12.530 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher 
.java:78) 
18:22:12.530 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:42) 
18:22:12.546 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:28) 
18:22:12.546 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.exec.ExceptionReportingAction.execute(ExceptionReport 
ingAction.java:32) 
18:22:12.546 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.exec.ExceptionReportingAction.execute(ExceptionReport 
ingAction.java:21) 
18:22:12.561 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.cli.CommandLineActionFactory$WithLoggingAction.execut 
e(CommandLineActionFactory.java:238) 
18:22:12.561 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.cli.CommandLineActionFactory$WithLoggingAction.execut 
e(CommandLineActionFactory.java:222) 
18:22:12.561 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.Main.doAction(Main.java:48) 
18:22:12.577 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.exec.EntryPoint$1.execute(EntryPoint.java:53) 
18:22:12.577 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.exec.EntryPoint$1.execute(EntryPoint.java:51) 
18:22:12.577 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.exec.Execution.execute(Execution.java:28) 
18:22:12.592 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.exec.EntryPoint.run(EntryPoint.java:39) 
18:22:12.592 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.Main.main(Main.java:39) 
18:22:12.592 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.ProcessBootstrap.runNoExit(ProcessBootstrap.java:51) 
18:22:12.608 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.ProcessBootstrap.run(ProcessBootstrap.java:33) 
18:22:12.608 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.launcher.GradleMain.main(GradleMain.java:24) 
18:22:12.608 [ERROR] [org.gradle.BuildExceptionReporter] Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of 
org/codehaus/plexus/classworlds/realm/ClassRealm) previously initiated loading for a different type with name "groovyjarjarantlr/TokenStrea 
m" 
18:22:12.624 [ERROR] [org.gradle.BuildExceptionReporter]  at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassR 
ealm.java:386) 
18:22:12.624 [ERROR] [org.gradle.BuildExceptionReporter]  at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(Self 
FirstStrategy.java:42) 
18:22:12.624 [ERROR] [org.gradle.BuildExceptionReporter]  at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.jav 
a:244) 
18:22:12.639 [ERROR] [org.gradle.BuildExceptionReporter]  at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.jav 
a:230) 
18:22:12.639 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.plugins.groovy.foundation.GroovyCpdTokenizer.tokenize(GroovyCpd 
Tokenizer.java:43) 
18:22:12.639 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.duplications.cpd.CPD.add(CPD.java:112) 
18:22:12.655 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.duplications.cpd.CPD.add(CPD.java:91) 
18:22:12.655 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.plugins.cpd.PmdEngine.configureCPD(PmdEngine.java:93) 
18:22:12.655 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.plugins.cpd.PmdEngine.executeCPD(PmdEngine.java:72) 
18:22:12.671 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.plugins.cpd.PmdEngine.analyse(PmdEngine.java:61) 
18:22:12.671 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.plugins.cpd.CpdSensor.analyse(CpdSensor.java:82) 
18:22:12.671 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:64) 
18:22:12.686 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.phases.Phases.execute(Phases.java:93) 
18:22:12.686 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.bootstrap.ProjectModule.doStart(ProjectModule.java:143) 
18:22:12.686 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.bootstrap.Module.start(Module.java:83) 
18:22:12.702 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.bootstrap.BatchModule.analyze(BatchModule.java:111) 
18:22:12.702 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.bootstrap.BatchModule.doStart(BatchModule.java:101) 
18:22:12.702 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.bootstrap.Module.start(Module.java:83) 
18:22:12.717 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.bootstrap.BootstrapModule.doStart(BootstrapModule.java:10 
2) 
18:22:12.717 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.bootstrap.Module.start(Module.java:83) 
18:22:12.717 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.Batch.execute(Batch.java:100) 
18:22:12.733 [ERROR] [org.gradle.BuildExceptionReporter]  at org.sonar.batch.Batch$execute.call(Unknown Source) 
18:22:12.733 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.plugins.sonar.internal.SonarCodeAnalyzer.execute(SonarCode 
Analyzer.groovy:51) 
18:22:12.733 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.plugins.sonar.internal.SonarCodeAnalyzer$execute.call(Unkn 
own Source) 
18:22:12.749 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.plugins.sonar.SonarAnalyze.analyze(SonarAnalyze.groovy:48) 

18:22:12.749 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(B 
eanDynamicObject.java:196) 
18:22:12.749 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject. 
java:102) 
18:22:12.764 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDyna 
micObject.java:93) 
18:22:12.764 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.plugins.sonar.SonarAnalyze_Decorated.invokeMethod(Unknown 
Source) 
18:22:12.764 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.util.ReflectionUtil.invoke(ReflectionUtil.groovy:23) 
18:22:12.780 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFacto 
ry$4.execute(AnnotationProcessingTaskFactory.java:150) 
18:22:12.780 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFacto 
ry$4.execute(AnnotationProcessingTaskFactory.java:145) 
18:22:12.780 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTa 
sk.java:495) 
18:22:12.796 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTa 
sk.java:484) 
18:22:12.796 [ERROR] [org.gradle.BuildExceptionReporter]  at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execut 
eActions(ExecuteActionsTaskExecuter.java:60) 
18:22:12.811 [ERROR] [org.gradle.BuildExceptionReporter]  ... 54 more 
18:22:12.811 [ERROR] [org.gradle.BuildExceptionReporter] 
18:22:12.827 [LIFECYCLE] [org.gradle.BuildResultLogger] 
18:22:12.827 [LIFECYCLE] [org.gradle.BuildResultLogger] BUILD FAILED 
18:22:12.827 [LIFECYCLE] [org.gradle.BuildResultLogger] 
18:22:12.842 [LIFECYCLE] [org.gradle.BuildResultLogger] Total time: 1 mins 38.815 secs 

Respuesta

3

Es una incompatibilidad conocida entre Sonar y Gradle. Actualmente es imposible analizar el código de Groovy con Sonar/Gradle. Esperemos que esto se aborde en una futura versión de Sonar/Gradle.

+0

Gracias, Peter. – Milkywayfarer

3

He bifurcada el sonar-maravilloso-plugin aquí https://github.com/excentric/sonar-groovy-plugin Este tenedor permite sonar para analizar código maravilloso a través Gradle

Sus otras opciones es abrir una grieta en el tarro de sonar-maravilloso-plugin y añadir el siguiente atributo al manifiesto:

Plugin-ChildFirstClassLoader: verdadera

ahora he bifurcadas la última versión 0.6 del plugin. Disponible aquí: https://github.com/excentric/sonar-groovy