You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by "Marc Meier (JIRA)" <ji...@apache.org> on 2014/11/18 09:28:34 UTC

[jira] [Created] (IVY-1499) NullPointerException while Retrieve

Marc Meier created IVY-1499:
-------------------------------

             Summary: NullPointerException while Retrieve
                 Key: IVY-1499
                 URL: https://issues.apache.org/jira/browse/IVY-1499
             Project: Ivy
          Issue Type: Bug
          Components: Core
    Affects Versions: 2.4.0-RC1
         Environment: Hard to say:
Worked on my System: Win 7 64, Java 6u45, Eclipse Luna and Kepler with current Plugins (Ant, Ant Ivy, IvyDE, Ant Ivy Tasker)
Occured on a very similar system and on my Test System with Lubuntu 14.04 64, OpenJDK 1.7.0_65
            Reporter: Marc Meier
            Priority: Minor


I encountered a NullPointerException while retrieving an ivy file. Unfortunately I'm not able to recreate it properly. 

{panel:title=Stacktrace}
BUILD FAILED
/var/lib/jenkins/jobs/antivy/workspace/dev/all.xml:12: The following error occurred while executing this line:
/var/lib/jenkins/jobs/antivy/workspace/dev/common_module_build.xml:74: impossible to ivy retrieve: java.lang.RuntimeException: problem during retrieve of org.example#org.example.converter: java.lang.NullPointerException
	at org.apache.ivy.core.retrieve.RetrieveEngine.retrieve(RetrieveEngine.java:249)
	at org.apache.ivy.Ivy.retrieve(Ivy.java:561)
	at org.apache.ivy.ant.IvyRetrieve.doExecute(IvyRetrieve.java:98)
	at org.apache.ivy.ant.IvyTask.execute(IvyTask.java:271)
	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
	at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:622)
	at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
	at org.apache.tools.ant.Task.perform(Task.java:348)
	at org.apache.tools.ant.Target.execute(Target.java:435)
	at org.apache.tools.ant.Target.performTasks(Target.java:456)
	at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
	at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
	at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:440)
	at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:306)
	at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:221)
	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:622)
	at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
	at org.apache.tools.ant.Task.perform(Task.java:348)
	at org.apache.tools.ant.Target.execute(Target.java:435)
	at org.apache.tools.ant.Target.performTasks(Target.java:456)
	at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
	at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
	at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
	at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
	at org.apache.tools.ant.Main.runBuild(Main.java:851)
	at org.apache.tools.ant.Main.startAnt(Main.java:235)
	at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
	at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
Caused by: java.lang.NullPointerException
	at org.apache.ivy.core.IvyPatternHelper.substituteTokens(IvyPatternHelper.java:239)
	at org.apache.ivy.core.IvyPatternHelper.substitute(IvyPatternHelper.java:171)
	at org.apache.ivy.core.retrieve.RetrieveEngine.determineArtifactsToCopy(RetrieveEngine.java:355)
	at org.apache.ivy.core.retrieve.RetrieveEngine.retrieve(RetrieveEngine.java:118)
	... 34 more
{panel}
The converter (which is the project I try to build) depends on the core, which is also one of our projects. Since we only need the core for its dependencies, only the ivy.xml is published in my local repository and needed by the converter. 

I tried to figure out, what the problem is. It seems, ivy is unable to determine the destPattern (RetrieveEngine.java:355) while retrieving the core. While debugging, I noticed the type of the artifact is ivy, while destIvyPattern is null. This leads to destPattern being null, too.

This could be a misconfiguration of any (ivy)pattern in the local repository, I'm sorry, I can not give you more information, but my configuration files are already changed, so I can not recreate the bug anymore. *I would suggest to check the destPattern variable for null, so at least a proper Exception (instead of NullPointerException) can be thrown*. 

I have no clue, why the problem occured on my linux system and the windows/eclipse configuration off my colleague, while it worked properly on mine.

For debugging I checked out the current master branch (target.ivy.version=2.5.0), so the problem still exists there.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)