summaryrefslogtreecommitdiff
path: root/qpid/java/build.xml
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2012-05-11 15:36:49 +0000
committerRobert Gemmell <robbie@apache.org>2012-05-11 15:36:49 +0000
commited95fde2dc61790686a98106ad1fbd8ff15a510a (patch)
treef226507c5002ec0da3660f1ffc52d9c42867b915 /qpid/java/build.xml
parent627984e1ae185bfeae12ad8c1d5f5e2024f7f414 (diff)
downloadqpid-python-ed95fde2dc61790686a98106ad1fbd8ff15a510a.tar.gz
QPID-3994: use Ivy to download the main component dependencies during the build, and the optional bdb-je dependency on request, enabling removal of the main component dependencies from the repository and the 'source release' artifacts.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1337211 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/build.xml')
-rw-r--r--qpid/java/build.xml22
1 files changed, 20 insertions, 2 deletions
diff --git a/qpid/java/build.xml b/qpid/java/build.xml
index 1de6c8f49c..0905d650d4 100644
--- a/qpid/java/build.xml
+++ b/qpid/java/build.xml
@@ -18,7 +18,7 @@
- under the License.
-
-->
-<project name="AMQ Java" default="build">
+<project name="AMQ Java" xmlns:ivy="antlib:org.apache.ivy.ant" default="build">
<import file="common.xml"/>
@@ -156,7 +156,7 @@
<touch file="${qpid.jar}"/>
</target>
- <target name="build" description="build the project">
+ <target name="build" depends="retrieve-dependencies" description="build the project">
<iterate target="build"/>
<antcall target="manifest"/>
</target>
@@ -296,4 +296,22 @@
<target name="eclipse" description="build eclipse project and classpath files">
<iterate target="eclipse"/>
</target>
+
+ <!-- check the following properties which must be specified by the user-->
+ <target name="check-upload-props-exist" description="check that the required properties have been set">
+ <fail unless="nexus.user" message="You must supply the 'nexus.user' property"/>
+ <fail unless="nexus.password" message="You must supply the 'nexus.password' property"/>
+ <fail unless="maven.artifact.dir" message="You must supply the 'maven.artifact.dir' property"/>
+ </target>
+
+ <target name="perform-nexus-upload">
+ <ivy:configure file="ivysettings.nexus.xml"/>
+ <ivy:resolve file="ivy.nexus.xml"/>
+ <ivy:deliver/>
+ <ivy:publish publishivy="false" resolver="nexus"
+ artifactspattern="${maven.artifact.dir}/[organisation]/[module]/[artifact]/[revision]/[artifact]-[revision](-[classifier]).[ext]"/>
+ </target>
+
+ <target name="upload" depends="load-ivy, check-upload-props-exist, perform-nexus-upload"/>
+
</project>