From fe78b4b2f629e06d852b3558b33b07905c4b86cd Mon Sep 17 00:00:00 2001 From: mattinger Date: Thu, 24 Aug 2006 05:09:26 +0000 Subject: Reworked importUrl task to use Ivy to do it's bidding. git-svn-id: file:///home/sven/projects/JOGL/temp/ant-contrib/svn/ant-contrib-code/trunk/ant-contrib@41 32d7a393-a5a9-423c-abd3-5d954feb1f2f --- docs/manual/tasks/importurl.html | 99 +++++++++++++++++++++++++++++++++------- 1 file changed, 83 insertions(+), 16 deletions(-) (limited to 'docs') diff --git a/docs/manual/tasks/importurl.html b/docs/manual/tasks/importurl.html index 76d40b3..d302df5 100755 --- a/docs/manual/tasks/importurl.html +++ b/docs/manual/tasks/importurl.html @@ -9,23 +9,38 @@

The Importurl task will download a file, and import it's contents into the current project. The file can be in the form of a standard ant .xml project - file, or a .jar/.zip file. In the case of a .jar/.zip file, the file is downloaded - and then decompressed. After decompression, the file 'build.xml' at the root - level of the jar is imported.

-

- By importing a .jar/.zip file, one can package additional resources along with + file, or a .jar/.zip file. +

+

In the case of an .xml file, the file is downloaded, and imported as + is. In this case, the file itself is the only thing downloaded (ie. + no corresponding .properties files, or other build files are downloaded). +

+

In the case of a .jar/.zip file, the file is downloaded and then + decompressed. After decompression, the file 'build.xml' at the root + level of the jar is imported. By importing a .jar/.zip file, one can package additional resources along with the build.xml file. However, you must be careful how you refer to these resources. The build.xml file must follow the same rules as any other file imported with the <import> task, in that references relative to the build.xml file must be made with the property: ant.file.<projectname> where <projectname> is the name of the project being imported, as specified - in the project tag. -

+ in the project tag. Example: +

+ +
    
+    
+        <project name="common">
+            <basedir property="ant.dir.common" file="${ant.file.common}" />
+            <property file="${ant.dir.common}/build.properties" />
+        </project>
+    
+    

This task should be compatible with older versions of ant, but has only been - tested with Ant 1.6.x + tested with Ant 1.6.x. The underlying implementation is done using the + Ivy dependency resolver software, + and thus, it needs available to the same classloader that loads this task.

Parameters

@@ -35,11 +50,53 @@ - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Required
urlThe URL of the file to import. This can be any URL which - is recognized by the <get> task.YesorgThe organization that publishes the script.Yes.
moduleThe name of the module which is to be fetched.Yes.
refThe revision of the module to be fetched.No. Defaults to "latest.integration". + See the ivy details for more information on the possible wildcarding + that can be used for this value.
typeThe type of file to be downloadedNo. Defaults to 'jar'. Can be + any file extension. However, unless the type is 'xml', the + file is assumed to be a compressed file, expandable by ant's + <expand> task (which is aliased to unjar, unzip).
repositoryUrlThe URL base of the repository to use. This + results in using Ivy's URLResolver to resolve the requested + resource.No. Defaults to the IvyRepResolver.
repositoryDirThe file base of the repository to use. This + results in using Ivy's FileSystemResolver to resolve the requested + resource.No. Defaults to the IvyRepResolver.
artifactPatternThe pattern used to find artifacts in the repository.No. If repositoryUrl or repositoryDir + are specified, this defaults to the standard repository pattern: + "/[org]/[module]/[ext]s/[module]-[revision].[ext]". Please see the + ivy documentation for more information on the contents of this pattern. +
@@ -48,19 +105,28 @@
     
-    <antcontrib:importurl url="file:/path/to/build.xml" />
+    <antcontrib:importurl org="antcontrib"
+                             module="common"
+                             rev="3.2" />
     
     
     
-    <antcontrib:importurl url="http://host/path/to/build.xml" />
+    <antcontrib:importurl org="antcontrib"
+                             module="common"
+                             rev="3.2" 
+                             type="xml" />
     
     
     
-    <antcontrib:importurl url="http://host/path/to/common.jar" />
+    <antcontrib:importurl repositoryUrl="http://www.antcontrib.org/ivyrep"
+                             org="antcontrib"
+                             module="common"
+                             rev="3.2" 
+                             type="xml" />
     
     
@@ -70,7 +136,8 @@
     
     <project name="common">
-    <property file="${ant.file.common}/build.properties" />
+    <basedir property="ant.dir.common" file="${ant.file.common}" />
+    <property file="${ant.dir.common}/build.properties" />
     </project>
     
     
-- cgit v1.2.3