Hi all,

I am currently migrating from 0.5 to 0.6 and have almost succeeded (thanks
to the breaking changes doc) except for the exclusion of transitive
dependencies. Actually, I'm getting a NPE when I try to iterate over the
files in a configuration.

Here is a code snippet:
configurations {
   all*.exclude group: "hsqldb"
}
dependencies {
   compile "a-jar-that-depends-on-hsqldb"
}
task "myTask" << {
        configurations.testRuntime.each { file -> println file }
}

Is this really a bug or am I doing something wrong? In case it is a bug,
could you please think of a workaround?

Thanks in advance. Regards
Rafa

PS: In case it helps, here is the stacktrace
Execution failed for task ':myTask'.
        at org.gradle.api.internal.AbstractTask.execute(AbstractTask.java:183)
        at
org.gradle.execution.DefaultTaskExecuter.executeTask(DefaultTaskExecuter.java:153)
        at
org.gradle.execution.DefaultTaskExecuter.doExecute(DefaultTaskExecuter.java:144)
        at
org.gradle.execution.DefaultTaskExecuter.execute(DefaultTaskExecuter.java:67)
        at
org.gradle.execution.TaskNameResolvingBuildExecuter.execute(TaskNameResolvingBuildExecuter.java:88)
        at org.gradle.Gradle.runInternal(Gradle.java:121)
        at org.gradle.Gradle.run(Gradle.java:93)
        at org.gradle.Main.execute(Main.java:253)
        at org.gradle.Main.main(Main.java:83)
        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.gradle.BootstrapMain.main(BootstrapMain.java:53)
Caused by: java.lang.RuntimeException: java.lang.NullPointerException
        at
org.gradle.api.internal.artifacts.ivyservice.DefaultIvyDependencyResolver.resolveAsReport(DefaultIvyDependencyResolver.java:72)
        at
org.gradle.api.internal.artifacts.ivyservice.DefaultIvyService.resolveAsReportInternal(DefaultIvyService.java:120)
        at
org.gradle.api.internal.artifacts.ivyservice.DefaultIvyService.resolveAsReport(DefaultIvyService.java:110)
        at
org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.resolveAsReport(DefaultConfiguration.java:156)
        at
org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.resolve(DefaultConfiguration.java:147)
        at
org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.getFiles(DefaultConfiguration.java:175)
        at
org.gradle.api.internal.artifacts.AbstractFileCollection.iterator(AbstractFileCollection.java:48)
        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:86)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:230)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:912)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
        at
org.codehaus.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:766)
        at
org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:754)
        at
org.codehaus.groovy.runtime.InvokerHelper.asIterator(InvokerHelper.java:506)
        at
org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1056)
        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.runtime.metaclass.ReflectionMetaMethod.invoke(ReflectionMetaMethod.java:51)
        at
org.codehaus.groovy.runtime.metaclass.NewInstanceMetaMethod.invoke(NewInstanceMetaMethod.java:54)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:230)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:912)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
        at
org.codehaus.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:766)
        at
org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:754)
        at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:170)
        at build_gradle$_run_closure13.doCall(build_gradle:202)
        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:86)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:230)
        at
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:248)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
        at
org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:778)
        at
org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:758)
        at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:170)
        at org.gradle.api.ClosureTaskAction.execute(DefaultTask.groovy:94)
        at org.gradle.api.ClosureTaskAction.execute(DefaultTask.groovy)
        at org.gradle.api.internal.AbstractTask.doExecute(AbstractTask.java:219)
        at org.gradle.api.internal.AbstractTask.execute(AbstractTask.java:174)
        ... 13 common frames omitted
Caused by: java.lang.NullPointerException
        at
org.apache.ivy.plugins.matcher.ExactPatternMatcher$ExactMatcher.matches(ExactPatternMatcher.java:46)
        at
org.apache.ivy.plugins.matcher.MatcherHelper.matches(MatcherHelper.java:34)
        at
org.apache.ivy.plugins.matcher.MatcherHelper.matches(MatcherHelper.java:38)
        at
org.apache.ivy.plugins.matcher.MatcherHelper.matches(MatcherHelper.java:49)
        at
org.apache.ivy.core.module.descriptor.DefaultModuleDescriptor.doesExclude(DefaultModuleDescriptor.java:627)
        at
org.apache.ivy.core.resolve.IvyNodeCallers.doesExclude(IvyNodeCallers.java:288)
        at
org.apache.ivy.core.resolve.IvyNodeCallers.doesCallersExclude(IvyNodeCallers.java:269)
        at
org.apache.ivy.core.resolve.IvyNodeCallers.doesCallersExclude(IvyNodeCallers.java:251)
        at org.apache.ivy.core.resolve.IvyNode.getArtifacts(IvyNode.java:830)
        at
org.apache.ivy.core.resolve.IvyNode.getSelectedArtifacts(IvyNode.java:739)
        at
org.apache.ivy.core.report.ResolveReport.setDependencies(ResolveReport.java:235)
        at
org.apache.ivy.core.resolve.ResolveEngine.resolve(ResolveEngine.java:236)
        at org.apache.ivy.Ivy.resolve(Ivy.java:512)
        at
org.gradle.api.internal.artifacts.ivyservice.DefaultIvyDependencyResolver.resolveAsReport(DefaultIvyDependencyResolver.java:68)
        ... 59 common frames omitted
-- 
View this message in context: 
http://www.nabble.com/NPE-when-using-exclude-rules-tp23728395p23728395.html
Sent from the gradle-user mailing list archive at Nabble.com.


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

    http://xircles.codehaus.org/manage_email


Reply via email to