http://issues.apache.org/jira/browse/IVY-983 It's fixed in trunk now thankfully.
Jason Porter Real Programmers think better when playing Adventure or Rogue. PGP key id: 926CCFF5 PGP fingerprint: 64C2 C078 13A9 5B23 7738 F7E5 1046 C39B 926C CFF5 PGP key available at: keyserver.net, pgp.mit.edu On Tue, May 26, 2009 at 12:58, Hans Dockter <[email protected]> wrote: > > On May 26, 2009, at 8:45 PM, Jason Porter wrote: > >> How is this working with Ivy? AFAIK this is broken in Ivy. > > Not that I know off. What exactly do you mean is broken? The whole Ivy > exclude mechanism? > > - Hans > >> >> >> Jason Porter >> Real Programmers think better when playing Adventure or Rogue. >> >> PGP key id: 926CCFF5 >> PGP fingerprint: 64C2 C078 13A9 5B23 7738 F7E5 1046 C39B 926C CFF5 >> PGP key available at: keyserver.net, pgp.mit.edu >> >> >> >> On Tue, May 26, 2009 at 12:38, Hans Dockter <[email protected]> wrote: >>> >>> Hi Rafa, >>> >>> I can't reproduce this. The following code works for me (MetaModel has a >>> dependency on hsqldb): >>> >>> usePlugin 'java' >>> >>> repositories { >>> mavenCentral() >>> } >>> >>> configurations { >>> all*.exclude group: "hsqldb" >>> } >>> >>> dependencies { >>> compile "dk.eobjects.commons:MetaModel:1.0.7" >>> } >>> >>> task myTask << { >>> configurations.testRuntime.each { file -> println file } >>> } >>> >>> P.S. You don't need to quote the task name any more when creating it. >>> >>> Could you create a test case and file a Jira? >>> >>> - Hans >>> >>> On May 26, 2009, at 8:11 PM, Rafael Serrano wrote: >>> >>>> >>>> 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 >>>> >>>> >>> >>> -- >>> Hans Dockter >>> Gradle Project Manager >>> http://www.gradle.org >>> >>> >>> >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe from this list, please visit: >>> >>> http://xircles.codehaus.org/manage_email >>> >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe from this list, please visit: >> >> http://xircles.codehaus.org/manage_email >> >> > > -- > Hans Dockter > Gradle Project Manager > http://www.gradle.org > > > > > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > > --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
