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


Reply via email to