Thanks Maarten
I changed what you suggested. Looks a bit closer. The IO exception in debug I
can't see the directory it is looking for the jar in
<target name="publish-remote" depends="version" description="--> publish this
project in the ivy repository">
<ivy:publish artifactspattern="${build.dir}/[artifact].[ext]"
resolver="artifactory-publish"
pubrevision="${version}"
status="integration"
overwrite="true"
/>
<echo message="project ${ant.project.name} released with
version ${version}" />
</target>
testproject
/Users/cuthbe/dev/code/testproject-trunk/build/build_common.xml:162: impossible
to publish artifacts for
com.testproject#testproject-baseserver-common;[email protected]:
java.io.IOException: missing artifact
com.testproject#testproject-baseserver-common;1.0!testproject-baseserver-common.jar
at
org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:508)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:418)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
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.taskdefs.Sequential.execute(Sequential.java:62)
at net.sf.antcontrib.logic.IfTask.execute(Unknown Source)
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.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:154)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
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:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
at org.apache.tools.ant.Main.runBuild(Main.java:758)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
On 26 Aug 2010, at 20:50, Maarten Coene wrote:
> I think it is caused by your empty <artifacts /> element.
> Please remove that from your ivy:publish task, something like should work:
>
> <ivy:publish artifactspattern="${build.dir}/[artifact].[ext]"
> resolver="remoterepo-publish"
> pubrevision="${version}"
> status="integration"
> overwrite="true" />
>
> Maarten
>
>
>
> ----- Original Message ----
> From: Ben Cuthbert <[email protected]>
> To: [email protected]
> Sent: Wed, August 25, 2010 9:35:40 AM
> Subject: Re: Reference build-path not found.
>
> I think I am getting closer. So I have the ant build downloading ivy from the
> maven repo each time and putting it in the classpath.
>
> So now I see this in the ant log
>
> Setting project property: ivy.shared.default.root -> ${repository.dir}/shared
> parsing buildfile
> jar:file:/Users/cuthbe/applications/apache-ant-1.7.1/lib/ivy-2.2.0-rc1.jar!/org/apache/ivy/ant/antlib.xml
> with URI =
> jar:file:/Users/cuthbe/applications/apache-ant-1.7.1/lib/ivy-2.2.0-rc1.jar!/org/apache/ivy/ant/antlib.xml
>
>
>
> And then way down the bottom I see
>
> publish-remote:
> Overriding previous definition of property "ivy.version"
> Setting project property: ivy.version -> 2.2.0-rc1
> [ivy:publish] parameter found as ivy variable:
> ivy.organisation=com.testproject
> [ivy:publish] parameter found as ivy variable:
> ivy.module=testproject-baseserver-common
> [ivy:publish] parameter found as ivy variable:
> [email protected]
> [ivy:publish] parameter not found: ivy.deliver.branch
> [ivy:publish] parameter found as attribute value: ivy.deliver.revision=1.0
> [ivy:publish] parameter found as attribute value: ivy.status=integration
> [ivy:publish] :: publishing :: com.testproject#testproject-baseserver-common
> [ivy:publish] validate = true
> [ivy:publish] post 1.3 ivy file: using exact as default matcher
> [antcall] Exiting
> /Users/cuthbe/dev/code/testproject-trunk/testproject-baseserver-common/build.xml.
>
> [ant] Exiting
> /Users/cuthbe/dev/code/testproject-trunk/testproject-baseserver-common/build.xml.
>
>
> BUILD FAILED
> /Users/cuthbe/dev/code/testproject-trunk/build/build.xml:183: The following
> error occurred while executing this line:
> /Users/cuthbe/dev/code/testproject-trunk/testproject-baseserver-common/build.xml:14:
> The following error occurred while executing this line:
> /Users/cuthbe/dev/code/testproject-trunk/build/build_common.xml:162:
> impossible
> to publish artifacts for
> com.testproject#testproject-baseserver-common;[email protected]:
> java.lang.NullPointerException
> at
> org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:508)
>
> at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:418)
> at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>
> at java.lang.reflect.Method.invoke(Method.java:597)
> 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.taskdefs.Sequential.execute(Sequential.java:62)
> at net.sf.antcontrib.logic.IfTask.execute(Unknown Source)
> 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.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
> at org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:154)
> at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>
> at java.lang.reflect.Method.invoke(Method.java:597)
> 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:357)
> at org.apache.tools.ant.Target.performTasks(Target.java:385)
> at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
> at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
> at
> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
>
> at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
> at org.apache.tools.ant.Main.runBuild(Main.java:758)
> at org.apache.tools.ant.Main.startAnt(Main.java:217)
> at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
> at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
>
>
> Before the above error I do see loads of HTTP requests to the repo
>
> Setting project property: ivy.version -> 2.2.0-rc1
> [ivy:buildnumber] using local to list all in
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/ivys
> [ivy:buildnumber] found 3 urls
> [ivy:buildnumber] 1 matched
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/ivys/ivy-[revision].xml
>
> [ivy:buildnumber] local do not support transaction. ivy pattern does not use
> revision as a directory
> [ivy:buildnumber] using local to list all in
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/jars
> [ivy:buildnumber] found 3 urls
> [ivy:buildnumber] 0 matched
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/jars/[artifact]-[revision].jar
>
> [ivy:buildnumber] HTTP response status: 404
> url=http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] CLIENT ERROR: File not found.
> url=http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] maven-metadata not available:
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] using libs-releases-local to list all in
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] HTTP response status: 404
> url=http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] CLIENT ERROR: Not Found
> url=http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] problem while listing resources in
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
> with libs-releases-local:
> [ivy:buildnumber] java.io.IOException The HTTP response code for
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
> did not indicate a success. See log for more detail.
> [ivy:buildnumber] HTTP response status: 404
> url=http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] CLIENT ERROR: File not found.
> url=http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] maven-metadata not available:
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] using testprojectrepo-publish to list all in
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] HTTP response status: 404
> url=http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] CLIENT ERROR: Not Found
> url=http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] problem while listing resources in
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
> with testprojectrepo-publish:
> [ivy:buildnumber] java.io.IOException The HTTP response code for
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
> did not indicate a success. See log for more detail.
> [ivy:buildnumber] maven-metadata not available:
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] using testprojectrepo-publish to list all in
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] HTTP response status: 404
> url=http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] CLIENT ERROR: Not Found
> url=http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] problem while listing resources in
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
> with testprojectrepo-publish:
> [ivy:buildnumber] java.io.IOException The HTTP response code for
> http://192.168.2.4:9999/artifactory/testproject-release/com/testproject/testproject-baseserver-common/
> did not indicate a success. See log for more detail.
> [ivy:buildnumber] using local to list all in
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/ivys
> [ivy:buildnumber] found 3 urls
> [ivy:buildnumber] 1 matched
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/ivys/ivy-[revision].xml
>
> [ivy:buildnumber] using local to list all in
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/jars
> [ivy:buildnumber] found 3 urls
> [ivy:buildnumber] 0 matched
> /Users/cuthbe/.ivy2/cache/com.testproject/testproject-baseserver-common/jars/[artifact]-[revision].jar
>
> [ivy:buildnumber] maven-metadata not available:
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/maven-metadata.xml
>
> [ivy:buildnumber] using libs-releases-local to list all in
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] HTTP response status: 404
> url=http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] CLIENT ERROR: Not Found
> url=http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
>
> [ivy:buildnumber] problem while listing resources in
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
> with libs-releases-local:
> [ivy:buildnumber] java.io.IOException The HTTP response code for
> http://192.168.2.4:9999/artifactory/libs-releases-local/com/testproject/testproject-baseserver-common/
> did not indicate a success. See log for more detail.
> Setting project property: ivy.new.revision -> ${module.version.target}-dev-b1
> Setting project property: ivy.new.build.number -> 1
>
> version:
> [mkdir] Skipping
> /Users/cuthbe/dev/code/testproject-trunk/testproject-baseserver-common/build
> because it already exists.
> [property] Loading
> /Users/cuthbe/dev/code/testproject-trunk/testproject-baseserver-common/build/testproject-baseserver-common.properties
>
> Property "module.version.target" has not been set
> Override ignored for property "version"
>
>
>
> On 24 Aug 2010, at 21:08, Maarten Coene wrote:
>
>> Are you sure this stacktrace is from the ivy-2.2.0-rc1 release?
>>
>> IvyPatternHelper.java:241 (the place where the NPE happens) is an empty line
>> in
>>
>> this release:
>> http://svn.apache.org/viewvc/ant/ivy/core/tags/2.2.0-rc1/src/java/org/apache/ivy/core/IvyPatternHelper.java?revision=959425&view=markup
>> p
>>
>>
>> Maarten
>>
>>
>>
>
>
>