That implies that the commons-io that is getting included on the classpath is 
probably the 1.4 version (the method being requested is only in commons-io 
2.0+).

I'd wager a new version of Sonar (specifically the pmd plugin) depends upon 
commons-io-2.+ is getting picked up and there might be some classloader 
isolation issue as gradle still includes 1.4 for internal uses or something 
else is specifying a 1.x version commons-io as a dependency.

-Spencer

--- On Wed, 4/27/11, Matthew McCullough <[email protected]> wrote:

From: Matthew McCullough <[email protected]>
Subject: [gradle-user] Sonar Plugin throws java.lang.NoSuchMethodError on 
Milestone 3
To: "Gradle User Mailing List" <[email protected]>
Date: Wednesday, April 27, 2011, 1:32 PM

I saw that the earlier exception [1] I got with the Gradle Sonar
Plugin was cured in Milestone 3 so I thought I would give it a try.
I'm getting the following exception.  I was never able to get it to
work in Milestone 2.  Any tips from anyone that has it working?  Tree,
error, build script, etc. included below.

I'll file a ticket if this appears to be a widespread issue.  I really
wanted to demo the Sonar plugin this Friday at the Reston NFJS show...

[1] http://issues.gradle.org/browse/GRADLE-1467


----------------------- START BUILD SCRIPT ---------------------------
apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'sonar'

group = 'com.gradleware.samples'
version = '0.0.1-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.8.2'
}
----------------------- END BUILD SCRIPT ---------------------------




----------------------- START BUILD TREE LISTING ---------------------------
├── build.gradle
└── src
    ├── main
    │   └── java
    │       └── Main.java
    └── test
        └── java
            └── TestMain.java
----------------------- END BUILD TREE LISTING ---------------------------




----------------------- START BUILD SCRIPT RUN ---------------------------
gradle sonar
:sonar

FAILURE: Build aborted because of an internal error.

* What went wrong:
Build aborted because of an unexpected internal error. Please file an
issue at: http://www.gradle.org.

* Try:
Run with --debug option to get additional debug info.

* Exception is:
java.lang.NoSuchMethodError:
org.apache.commons.io.FileUtils.write(Ljava/io/File;Ljava/lang/CharSequence;)V
    at org.sonar.plugins.pmd.PmdExecutor.writeXmlReport(PmdExecutor.java:140)
    at org.sonar.plugins.pmd.PmdExecutor.execute(PmdExecutor.java:83)
    at org.sonar.plugins.pmd.PmdSensor.analyse(PmdSensor.java:49)
    at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:59)
    at org.sonar.batch.phases.Phases.execute(Phases.java:75)
    at org.sonar.batch.ProjectBatch.execute(ProjectBatch.java:55)
    at org.sonar.batch.Batch.analyzeModule(Batch.java:158)
    at org.sonar.batch.Batch.analyzeModules(Batch.java:76)
    at org.sonar.batch.Batch.execute(Batch.java:62)
    at org.sonar.batch.Batch$execute.call(Unknown Source)
    at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
    at 
org.gradle.api.plugins.sonar.internal.SonarCodeAnalyzer.execute(SonarCodeAnalyzer.groovy:52)
    at 
org.gradle.api.plugins.sonar.internal.SonarCodeAnalyzer$execute.call(Unknown
Source)
    at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
    at 
org.gradle.api.plugins.sonar.Sonar$_execute_closure1.doCall(Sonar.groovy:116)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
    at 
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:273)
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:886)
    at 
org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
    at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:149)
    at org.gradle.api.plugins.sonar.Sonar$_execute_closure1.doCall(Sonar.groovy)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
    at 
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:273)
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:886)
    at 
org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
    at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
    at org.gradle.api.plugins.sonar.Sonar.withErrorSqlLogging(Sonar.groovy:253)
    at 
org.gradle.api.plugins.sonar.Sonar.this$5$withErrorSqlLogging(Sonar.groovy)
    at 
org.gradle.api.plugins.sonar.Sonar$this$5$withErrorSqlLogging.callCurrent(Unknown
Source)
    at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
    at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:149)
    at org.gradle.api.plugins.sonar.Sonar.execute(Sonar.groovy:104)
    at 
org.gradle.execution.DefaultTaskGraphExecuter.executeTask(DefaultTaskGraphExecuter.java:167)
    at 
org.gradle.execution.DefaultTaskGraphExecuter.doExecute(DefaultTaskGraphExecuter.java:160)
    at 
org.gradle.execution.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:78)
    at 
org.gradle.execution.TaskNameResolvingBuildExecuter.execute(TaskNameResolvingBuildExecuter.java:113)
    at 
org.gradle.execution.DelegatingBuildExecuter.execute(DelegatingBuildExecuter.java:54)
    at 
org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:158)
    at 
org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:112)
    at 
org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:80)
    at org.gradle.launcher.ExecuteBuildAction.run(ExecuteBuildAction.java:44)
    at 
org.gradle.launcher.DefaultGradleLauncherActionExecuter.execute(DefaultGradleLauncherActionExecuter.java:49)
    at org.gradle.launcher.DaemonMain.build(DaemonMain.java:143)
    at 
org.gradle.launcher.DaemonMain.doRunWithExceptionHandling(DaemonMain.java:132)
    at org.gradle.launcher.DaemonMain.doRunWithLogging(DaemonMain.java:114)
    at org.gradle.launcher.DaemonMain.doRun(DaemonMain.java:94)
    at org.gradle.launcher.DaemonMain.access$000(DaemonMain.java:45)
    at org.gradle.launcher.DaemonMain$1.handle(DaemonMain.java:75)
    at org.gradle.launcher.DaemonConnector$1.execute(DaemonConnector.java:165)
    at org.gradle.launcher.DaemonConnector$1.execute(DaemonConnector.java:161)
    at 
org.gradle.messaging.remote.internal.TcpIncomingConnector$Receiver.run(TcpIncomingConnector.java:102)
    at 
org.gradle.messaging.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:63)
    at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:680)
BUILD FAILED
----------------------- END: BUILD SCRIPT RUN ---------------------------

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to