ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hi...@apache.org
Subject svn commit: r1519302 - in /ant/site/ivy/production/history/trunk: book.html osgi/target-platform.html samples/target-platform/ samples/target-platform/build.xml samples/target-platform/ivy.xml samples/target-platform/ivysettings.xml use/buildobr.html
Date Sun, 01 Sep 2013 18:13:47 GMT
Author: hibou
Date: Sun Sep  1 18:13:47 2013
New Revision: 1519302

URL: http://svn.apache.org/r1519302
Log:
Regenerate trunk documentation

Added:
    ant/site/ivy/production/history/trunk/samples/target-platform/
    ant/site/ivy/production/history/trunk/samples/target-platform/build.xml   (with props)
    ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml   (with props)
    ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml   (with
props)
Modified:
    ant/site/ivy/production/history/trunk/book.html
    ant/site/ivy/production/history/trunk/osgi/target-platform.html
    ant/site/ivy/production/history/trunk/use/buildobr.html

Modified: ant/site/ivy/production/history/trunk/book.html
URL: http://svn.apache.org/viewvc/ant/site/ivy/production/history/trunk/book.html?rev=1519302&r1=1519301&r2=1519302&view=diff
==============================================================================
--- ant/site/ivy/production/history/trunk/book.html (original)
+++ ant/site/ivy/production/history/trunk/book.html Sun Sep  1 18:13:47 2013
@@ -3977,7 +3977,17 @@ Builds a list of build.xml files sorted 
 <pre>
     &lt;ivy:buildlist reference="build-path" ivyfilepath="ivy/ivy.xml" leaf="mymodule"&gt;<br
class="xooki-br"/>      &lt;fileset dir="projects" includes="**/build.xml"/&gt;<br
class="xooki-br"/>    &lt;/ivy:buildlist&gt;
 </pre>
-Builds a list of build.xml files sorted according to the ivy.xml files found in an ivy directory
relative to those build files. Only build.xml files of modules which have dependencies (direct
or transitive) on mymodule are put in the result list.<br class="xooki-br"/><br class="xooki-br"/><br
class="xooki-br"/>	<hr/><div class='toc-title toc-title-4'>buildobr</div><br
class="xooki-br"/><span class="since">since 2.3</span> From a bunch of jar
artifacts, generate an OBR (OSGi Bundle Repository) descriptor. It could be then used by the
<a href="../resolver/obr.html">obr resolver</a>.<br class="xooki-br"/>
+Builds a list of build.xml files sorted according to the ivy.xml files found in an ivy directory
relative to those build files. Only build.xml files of modules which have dependencies (direct
or transitive) on mymodule are put in the result list.<br class="xooki-br"/><br class="xooki-br"/><br
class="xooki-br"/>	<hr/><div class='toc-title toc-title-4'>buildobr</div><br
class="xooki-br"/><span class="since">since 2.3</span> From a set of jar artifacts,
this task generates an OBR (OSGi Bundle Repository) descriptor. It could be then used by the
<a href="../resolver/obr.html">obr resolver</a>.<br class="xooki-br"/><br
class="xooki-br"/>The set of jars which will be described by the OBR can be defined in
4 exclusive ways:
+<ul>
+<li>via an Ivy resolver: every jar listed by the resolver will be taken into account</li>
+<li>by defining a root directory: every jar found recursively in that folder will be
taken into account</li>
+<li>via the name of an Ivy cache: every artifact contained in the cache will be taken
into account</li>
+<li><span class="since">since 2.4</span> via a resolve: this task is a
<a href="use/postresolvetask.html">post resolve task</a> (with all the behaviour
and attributes common to all post resolve tasks), thus ever artifact which has been resolved
will be taken into account; it is especially useful for building a <a href="../osgi/target-platform.html">target
platform</a></li>
+</ul>
+
+NB: among every listed files or artifacts, only the actually OSGi bundles will be described
by the OBR descriptor; the other files are ignored. <br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
+
+<span class="since">since 2.4</span> This is a <a href="use/postresolvetask.html">post
resolve task</a>, with all the behaviour and attributes common to all post resolve tasks.<br
class="xooki-br"/>
 <table class="ant">
 <thead>
     <tr><th class="ant-att">Attribute</th><th class="ant-desc">Description</th><th
class="ant-req">Required</th></tr>
@@ -3986,7 +3996,7 @@ Builds a list of build.xml files sorted 
     <tr><td>out</td><td>the location of the descriptor file to generate</td><td>Yes</td></tr>
     <tr><td>resolverName</td><td>the name of the resolver from which
the jars should be to gathered</td><td>No</td></tr>
     <tr><td>cacheName</td><td>the name of the cache from which the
jars should be to gathered</td><td>No</td></tr>
-    <tr><td>baseDir</td><td>the folder into whicch the jars should
be gather recursively</td><td>No</td></tr>
+    <tr><td>baseDir</td><td>the folder into which the jars should
be gather recursively</td><td>No</td></tr>
     <tr><td>encoding</td><td>The encoding of the resulting xml file</td><td>No.
Defaults to <tt>UTF-8</tt></td></tr>
     <tr><td>indent</td><td>Specify if the xml result file should
be indented</td><td>No. Defaults to <tt>true</tt></td></tr>
     <tr><td>quiet</td><td>Log as debug rather than warning the rejected
jars as they are illformed</td><td>No. Defaults to <tt>false</tt></td></tr>
@@ -4005,7 +4015,11 @@ Configure an Ivy settings and builds an 
 <pre>
     &lt;ivy:configure file="ivysettings.xml" /&gt;<br class="xooki-br"/>  
 &lt;ivy:buildobr cacheName="my-cache" out="${basedir}/target/repo-eclipse.xml" /&gt;
 </pre>
-Configure an Ivy settings and builds an OBR descriptor from jars contained in the defined
cache.<br class="xooki-br"/><br class="xooki-br"/>	<hr/><div class='toc-title
toc-title-4'>buildnumber</div><br class="xooki-br"/><span class="since">since
1.4</span>
+Configure an Ivy settings and builds an OBR descriptor from jars contained in the defined
cache.<br class="xooki-br"/><br class="xooki-br"/><hr/>
+<pre>
+    &lt;ivy:configure file="ivysettings.xml" /&gt;<br class="xooki-br"/>  
 &lt;ivy:resolve file="ivy.xml" /&gt;<br class="xooki-br"/>    &lt;ivy:buildobr
out="${basedir}/target-platform-obr.xml" /&gt;
+</pre>
+Launch a resolve and then build an obr.xml describing the resolved artifacts.<br class="xooki-br"/><br
class="xooki-br"/>	<hr/><div class='toc-title toc-title-4'>buildnumber</div><br
class="xooki-br"/><span class="since">since 1.4</span>
 The buildnumber task is similar to the ant buildnumber task, except that it uses ivy repository
to find what is the latest version and calculate a new one for you.<br class="xooki-br"/><br
class="xooki-br"/>When called it sets four properties according to what has been found.<br
class="xooki-br"/>These properties are:
 <ul>
 <li>ivy.revision</li> the last revision found in the repository
@@ -5581,17 +5595,16 @@ In few steps, we will setup a build to c
   </tr>
 </table>
 
-<hr />
-<center><b>TODO - WORK IN PROGRESS</b></center>
-<hr />
+The concept of "target platform" is a concept introduced by Eclipse&#153; to describe
the set of bundle which will run together in an OSGi&#153; environement. Then when developping
an OSGi bundle, we expect it to run in a such "target platform".<br class="xooki-br"/><br
class="xooki-br"/>When developping a single OSGi bundle, a single ivy.xml (together with
the use of the <a href="../use/fixdeps.html">fixdeps</a> task) is sufficent to
describe precisely how the bundle requirements.<br class="xooki-br"/><br class="xooki-br"/>But
when developping several bundles, it will be error prone to declare for each bundle its dependencies.
Because once deployed in an OSGi environement, the bindings are sensitive to the available
bundles. So when developping, we must ensure that the set of bundles will be the same set
as the one at deploy time.<br class="xooki-br"/><br class="xooki-br"/>The concept
of "target platform" is a perfect fit to describe the set of bundles to resolve against. Here
is a
  recipe to handle it with just Ant+Ivy.<br class="xooki-br"/><br class="xooki-br"/><h1>A
Target Platform Project</h1>
 
-Building an OSGi&#153; bundle with standard tools like <tt>javac</tt> and
a classpath computed by Apache Ivy&#153; can be erroneous as these tools doesn't take
into account the package visibility enforced by the OSGi metadata. Then switching to OSGi
dedicated tools like the Eclipse&#153; JDT can be prefered. This kind of tools still need
a "target platform", a set of jars against to compile and then later run. A target platform
can be easily managed with Ivy and its OSGi capabilities.<br class="xooki-br"/>
-<ul>Some links of interest:<br class="xooki-br"/>  <li><a href="../resolver/obr.html">OSGi
Bundle Repository Resolver</a></li>
-  <li><a href="../resolver/updatesite.html">Eclipse updatesite Resolver</a></li>
-  <li><a href="../use/retrieve.html">Ant ivy:retrieve task</a></li>
+First you need a project (basically a folder) in which you will manage your target platform.
In this project you'll need 3 files:
+<ul>
+<li>an <a href="../samples/target-platform/ivy.xml">ivy.xml</a> in which
you will describe the bundles you need,</li>
+<li>an <a href="../samples/target-platform/ivysettings.xml">ivysettings.xml</a>
which will describe where to download bundles from,</li>
+<li>and a <a href="../samples/target-platform/build.xml">build.xml</a>
with which you'll manage your target platform.</li>
 </ul>
 
-	<hr/><div class='toc-title toc-title-4'>Apache Felix Sigil</div><br
class="xooki-br"/><br class="xooki-br"/>Another initiative to manage OSGi&#153;
dependencies is the project <a href="http://felix.apache.org/site/apache-felix-sigil.html">Apache
Felix Sigil&#153;</a>. Sigil can used also together with Ivy. We will try to explain
here the different approach taken there compared to the build-in OSGi capabilities of Ivy.<br
class="xooki-br"/><br class="xooki-br"/><h1>A different approach</h1>
+In the build there is a first important target: <tt>'update-dependencies'</tt>.
Since the OSGi dependencies are very sensible to the available resources to resolve against,
it is important to make the resolve as tight and reproductible as possible. First this target
will do a resolve with the <tt>ivy.xml</tt>: a resolve which is very sensible
to the content of the remote repo, thus not much reproductible. And it is will generate an
<tt>ivy-fixed.xml</tt> from the resolved depedencies: this Ivy file contains only
fixed non transitive dependencies (see the <a href="../use/fixdeps.html">fixdeps</a>
task for further info). With that <tt>ivy-fixed.xml</tt> file, resolves are then
reproductible and will always generate the same set of artifacts.<br class="xooki-br"/><br
class="xooki-br"/>Once generated, it is recommended to share that <tt>ivy-fixed.xml</tt>
file into you version control system (subversion, git, etc...). The target <tt>'update-dependencies'</tt>
is then to be launched each
  time you edit the <tt>ivy.xml</tt>, when you want to change the content of your
target platform.<br class="xooki-br"/><br class="xooki-br"/>The second target
<tt>'generate-target-platform'</tt> will generate an <tt>obr.xml</tt>,
a OSGi Bundle repository descriptor. This file will list every artifact wich has been resolved
by the <tt>ivy-fixed.xml</tt>. Then each of your bundles you develop will do its
resolve against that <tt>obr.xml</tt> (see the <a href="../resolver/obr.html">obr
resolver</a>).<br class="xooki-br"/><br class="xooki-br"/>The generated
<tt>obr.xml</tt> contains paths to the local filesystem, so it is recommended
to not share it between developpers.<br class="xooki-br"/><br class="xooki-br"/>If
it is required to develop your plugin with the Eclipse PDE plugin, you can then use the alternative
target <tt>generate-retrieved-target-platform</tt>. It has the same principle
than the <tt>'generate-target-platform'</tt> but the artifacts are also retrieved
in a single fold
 er, just like are plugins in an Eclipse install. That way you can define your target platform
within Eclipse quite easily.<br class="xooki-br"/><br class="xooki-br"/>	<hr/><div
class='toc-title toc-title-4'>Apache Felix Sigil</div><br class="xooki-br"/><br
class="xooki-br"/>Another initiative to manage OSGi&#153; dependencies is the project
<a href="http://felix.apache.org/site/apache-felix-sigil.html">Apache Felix Sigil&#153;</a>.
Sigil can used also together with Ivy. We will try to explain here the different approach
taken there compared to the build-in OSGi capabilities of Ivy.<br class="xooki-br"/><br
class="xooki-br"/><h1>A different approach</h1>
 
 Apache Felix Sigil is at its core about managing OSGi dependencies, not directly related
to Ivy. Most of it core feature is about the implementation of the not yet released OBR (OSGi
Bundle Repository) specification. It then provides integration layers with sevral tools so
human being can actually use the OBR API. As "layer" there is an Eclipse plugin, and there
are the Ant/Ivy tasks and resolver.<br class="xooki-br"/><br class="xooki-br"/>On
the other hand the build in OSGi capabilities in Ivy are targeted against users already familiar
with Ivy and their <a href="http://ant.apache.org/ivy/links.html">tools</a> like
<a href="http://ant.apache.org/ivy/ivyde">Apache IvyDE&#153;</a>. So with
a minimum of effort, they can get OSGi dependency management.<br class="xooki-br"/><br
class="xooki-br"/><h1>Resulting differences</h1>
 

Modified: ant/site/ivy/production/history/trunk/osgi/target-platform.html
URL: http://svn.apache.org/viewvc/ant/site/ivy/production/history/trunk/osgi/target-platform.html?rev=1519302&r1=1519301&r2=1519302&view=diff
==============================================================================
--- ant/site/ivy/production/history/trunk/osgi/target-platform.html (original)
+++ ant/site/ivy/production/history/trunk/osgi/target-platform.html Sun Sep  1 18:13:47 2013
@@ -244,17 +244,16 @@
   </tr>
 </table>
 
-<hr />
-<center><b>TODO - WORK IN PROGRESS</b></center>
-<hr />
-
-Building an OSGi&#153; bundle with standard tools like <tt>javac</tt> and
a classpath computed by Apache Ivy&#153; can be erroneous as these tools doesn't take
into account the package visibility enforced by the OSGi metadata. Then switching to OSGi
dedicated tools like the Eclipse&#153; JDT can be prefered. This kind of tools still need
a "target platform", a set of jars against to compile and then later run. A target platform
can be easily managed with Ivy and its OSGi capabilities.<br class="xooki-br"/>
-<ul>Some links of interest:<br class="xooki-br"/>  <li><a href="../resolver/obr.html">OSGi
Bundle Repository Resolver</a></li>
-  <li><a href="../resolver/updatesite.html">Eclipse updatesite Resolver</a></li>
-  <li><a href="../use/retrieve.html">Ant ivy:retrieve task</a></li>
+The concept of "target platform" is a concept introduced by Eclipse&#153; to describe
the set of bundle which will run together in an OSGi&#153; environement. Then when developping
an OSGi bundle, we expect it to run in a such "target platform".<br class="xooki-br"/><br
class="xooki-br"/>When developping a single OSGi bundle, a single ivy.xml (together with
the use of the <a href="../use/fixdeps.html">fixdeps</a> task) is sufficent to
describe precisely how the bundle requirements.<br class="xooki-br"/><br class="xooki-br"/>But
when developping several bundles, it will be error prone to declare for each bundle its dependencies.
Because once deployed in an OSGi environement, the bindings are sensitive to the available
bundles. So when developping, we must ensure that the set of bundles will be the same set
as the one at deploy time.<br class="xooki-br"/><br class="xooki-br"/>The concept
of "target platform" is a perfect fit to describe the set of bundles to resolve against. Here
is a
  recipe to handle it with just Ant+Ivy.<br class="xooki-br"/><br class="xooki-br"/><h1>A
Target Platform Project</h1>
+
+First you need a project (basically a folder) in which you will manage your target platform.
In this project you'll need 3 files:
+<ul>
+<li>an <a href="../samples/target-platform/ivy.xml">ivy.xml</a> in which
you will describe the bundles you need,</li>
+<li>an <a href="../samples/target-platform/ivysettings.xml">ivysettings.xml</a>
which will describe where to download bundles from,</li>
+<li>and a <a href="../samples/target-platform/build.xml">build.xml</a>
with which you'll manage your target platform.</li>
 </ul>
 
-	
+In the build there is a first important target: <tt>'update-dependencies'</tt>.
Since the OSGi dependencies are very sensible to the available resources to resolve against,
it is important to make the resolve as tight and reproductible as possible. First this target
will do a resolve with the <tt>ivy.xml</tt>: a resolve which is very sensible
to the content of the remote repo, thus not much reproductible. And it is will generate an
<tt>ivy-fixed.xml</tt> from the resolved depedencies: this Ivy file contains only
fixed non transitive dependencies (see the <a href="../use/fixdeps.html">fixdeps</a>
task for further info). With that <tt>ivy-fixed.xml</tt> file, resolves are then
reproductible and will always generate the same set of artifacts.<br class="xooki-br"/><br
class="xooki-br"/>Once generated, it is recommended to share that <tt>ivy-fixed.xml</tt>
file into you version control system (subversion, git, etc...). The target <tt>'update-dependencies'</tt>
is then to be launched each
  time you edit the <tt>ivy.xml</tt>, when you want to change the content of your
target platform.<br class="xooki-br"/><br class="xooki-br"/>The second target
<tt>'generate-target-platform'</tt> will generate an <tt>obr.xml</tt>,
a OSGi Bundle repository descriptor. This file will list every artifact wich has been resolved
by the <tt>ivy-fixed.xml</tt>. Then each of your bundles you develop will do its
resolve against that <tt>obr.xml</tt> (see the <a href="../resolver/obr.html">obr
resolver</a>).<br class="xooki-br"/><br class="xooki-br"/>The generated
<tt>obr.xml</tt> contains paths to the local filesystem, so it is recommended
to not share it between developpers.<br class="xooki-br"/><br class="xooki-br"/>If
it is required to develop your plugin with the Eclipse PDE plugin, you can then use the alternative
target <tt>generate-retrieved-target-platform</tt>. It has the same principle
than the <tt>'generate-target-platform'</tt> but the artifacts are also retrieved
in a single fold
 er, just like are plugins in an Eclipse install. That way you can define your target platform
within Eclipse quite easily.<br class="xooki-br"/><br class="xooki-br"/>	
  		</div><!-- main -->
 		</td>
 	</tr>

Added: ant/site/ivy/production/history/trunk/samples/target-platform/build.xml
URL: http://svn.apache.org/viewvc/ant/site/ivy/production/history/trunk/samples/target-platform/build.xml?rev=1519302&view=auto
==============================================================================
--- ant/site/ivy/production/history/trunk/samples/target-platform/build.xml (added)
+++ ant/site/ivy/production/history/trunk/samples/target-platform/build.xml Sun Sep  1 18:13:47
2013
@@ -0,0 +1,56 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<project name="target-platform" xmlns:ivy="ivy">
+
+    <!-- Load Ivy ant tasks -->
+    <taskdef uri="ivy" resource="org/apache/ivy/ant/antlib.xml" />
+    <!-- If Ivy is not in Ant's classpath, get the jar of Ivy and use the folowing -->
+    <!-- taskdef rather than the above one -->
+    <!--path id="ivy.classpath"> 
+        <fileset dir="${basedir}">
+            <include name="ivy.jar" />
+        </fileset>
+    </path>
+    <taskdef uri="ivy" resource="org/apache/ivy/ant/antlib.xml" classpathref="ivy.classpath"
/-->
+
+    <target name="update-dependencies" description="Update the dependencies">
+        <ivy:configure file="${basedir}/ivysettings.xml" />
+        <ivy:resolve file="ivy.xml" conf="*" />
+        <ivy:fixdeps tofile="ivy-fixed.xml" />
+    </target>
+
+    <!--
+        Two choices: either the jars stas in the cache, or they are retrive in a dedicated
folder
+        Having the bundle retrieved in a folder is helpfull to manage target platforms with
the PDE of Eclipse
+    -->
+
+    <target name="generate-target-platform" description="Generate the obr.xml of the target
platform">
+        <ivy:configure file="${basedir}/ivysettings.xml" />
+        <ivy:resolve file="ivy-fixed.xml" conf="*" />
+        <ivy:buildobr out="obr.xml" />
+    </target>
+
+    <target name="generate-retrieved-target-platform" description="Generate the obr.xml
of the retrieved target platform">
+        <ivy:configure file="${basedir}/ivysettings.xml" />
+        <ivy:resolve file="ivy-fixed.xml" conf="*" />
+        <ivy:retrieve pattern="${basedir}/bundles/[type]s/[artifact]_[revision].[ext]"
/>
+        <ivy:buildobr basedir="${basedir}/bundles" out="obr.xml" />
+    </target>
+
+</project>

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/build.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/build.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/build.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml
URL: http://svn.apache.org/viewvc/ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml?rev=1519302&view=auto
==============================================================================
--- ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml (added)
+++ ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml Sun Sep  1 18:13:47
2013
@@ -0,0 +1,24 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<ivy-module version="2.0">
+    <info organisation="com.acme" module="target-platform" />
+    <dependencies>
+        <dependency org="bundle" name="org.eclipse.jdt.core" rev="3.8.3.v20130121-145325"
/>
+    </dependencies>
+</ivy-module>
\ No newline at end of file

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/ivy.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml
URL: http://svn.apache.org/viewvc/ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml?rev=1519302&view=auto
==============================================================================
--- ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml (added)
+++ ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml Sun Sep
 1 18:13:47 2013
@@ -0,0 +1,33 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing,
+   software distributed under the License is distributed on an
+   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   KIND, either express or implied.  See the License for the
+   specific language governing permissions and limitations
+   under the License.    
+-->
+<ivysettings>
+
+    <settings defaultResolver="eclipse-juno" defaultLatestStrategy="latest-osgi" />
+
+    <!-- These are usual cache setup -->
+    <caches resolutionCacheDir="${ivy.settings.dir}/cache/resolution" useOrigin="true">
+        <cache name="eclipse-juno" basedir="${ivy.settings.dir}/cache/eclipse-juno" />
+    </caches>
+
+    <!-- The resolvers from which we will find our bundles -->
+    <resolvers>
+        <updatesite name="eclipse-juno" url="http://download.eclipse.org/releases/juno"
cache="eclipse-juno" requirementStrategy="first" />
+    </resolvers>
+
+</ivysettings>

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: ant/site/ivy/production/history/trunk/samples/target-platform/ivysettings.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: ant/site/ivy/production/history/trunk/use/buildobr.html
URL: http://svn.apache.org/viewvc/ant/site/ivy/production/history/trunk/use/buildobr.html?rev=1519302&r1=1519301&r2=1519302&view=diff
==============================================================================
--- ant/site/ivy/production/history/trunk/use/buildobr.html (original)
+++ ant/site/ivy/production/history/trunk/use/buildobr.html Sun Sep  1 18:13:47 2013
@@ -235,7 +235,17 @@
 		<div id="main">
 
 		<h1 class="title">buildobr</h1>
-            <br class="xooki-br"/><span class="since">since 2.3</span>
From a bunch of jar artifacts, generate an OBR (OSGi Bundle Repository) descriptor. It could
be then used by the <a href="../resolver/obr.html">obr resolver</a>.<br class="xooki-br"/>
+            <br class="xooki-br"/><span class="since">since 2.3</span>
From a set of jar artifacts, this task generates an OBR (OSGi Bundle Repository) descriptor.
It could be then used by the <a href="../resolver/obr.html">obr resolver</a>.<br
class="xooki-br"/><br class="xooki-br"/>The set of jars which will be described by
the OBR can be defined in 4 exclusive ways:
+<ul>
+<li>via an Ivy resolver: every jar listed by the resolver will be taken into account</li>
+<li>by defining a root directory: every jar found recursively in that folder will be
taken into account</li>
+<li>via the name of an Ivy cache: every artifact contained in the cache will be taken
into account</li>
+<li><span class="since">since 2.4</span> via a resolve: this task is a
<a href="../use/postresolvetask.html">post resolve task</a> (with all the behaviour
and attributes common to all post resolve tasks), thus ever artifact which has been resolved
will be taken into account; it is especially useful for building a <a href="../osgi/target-platform.html">target
platform</a></li>
+</ul>
+
+NB: among every listed files or artifacts, only the actually OSGi bundles will be described
by the OBR descriptor; the other files are ignored. <br class="xooki-br"/><br class="xooki-br"/><h1>Attributes</h1>
+
+<span class="since">since 2.4</span> This is a <a href="../use/postresolvetask.html">post
resolve task</a>, with all the behaviour and attributes common to all post resolve tasks.<br
class="xooki-br"/>
 <table class="ant">
 <thead>
     <tr><th class="ant-att">Attribute</th><th class="ant-desc">Description</th><th
class="ant-req">Required</th></tr>
@@ -244,7 +254,7 @@
     <tr><td>out</td><td>the location of the descriptor file to generate</td><td>Yes</td></tr>
     <tr><td>resolverName</td><td>the name of the resolver from which
the jars should be to gathered</td><td>No</td></tr>
     <tr><td>cacheName</td><td>the name of the cache from which the
jars should be to gathered</td><td>No</td></tr>
-    <tr><td>baseDir</td><td>the folder into whicch the jars should
be gather recursively</td><td>No</td></tr>
+    <tr><td>baseDir</td><td>the folder into which the jars should
be gather recursively</td><td>No</td></tr>
     <tr><td>encoding</td><td>The encoding of the resulting xml file</td><td>No.
Defaults to <tt>UTF-8</tt></td></tr>
     <tr><td>indent</td><td>Specify if the xml result file should
be indented</td><td>No. Defaults to <tt>true</tt></td></tr>
     <tr><td>quiet</td><td>Log as debug rather than warning the rejected
jars as they are illformed</td><td>No. Defaults to <tt>false</tt></td></tr>
@@ -263,7 +273,11 @@ Configure an Ivy settings and builds an 
 <pre>
     &lt;ivy:configure file="ivysettings.xml" /&gt;<br class="xooki-br"/>  
 &lt;ivy:buildobr cacheName="my-cache" out="${basedir}/target/repo-eclipse.xml" /&gt;
 </pre>
-Configure an Ivy settings and builds an OBR descriptor from jars contained in the defined
cache.<br class="xooki-br"/><br class="xooki-br"/>	
+Configure an Ivy settings and builds an OBR descriptor from jars contained in the defined
cache.<br class="xooki-br"/><br class="xooki-br"/><hr/>
+<pre>
+    &lt;ivy:configure file="ivysettings.xml" /&gt;<br class="xooki-br"/>  
 &lt;ivy:resolve file="ivy.xml" /&gt;<br class="xooki-br"/>    &lt;ivy:buildobr
out="${basedir}/target-platform-obr.xml" /&gt;
+</pre>
+Launch a resolve and then build an obr.xml describing the resolved artifacts.<br class="xooki-br"/><br
class="xooki-br"/>	
  		</div><!-- main -->
 		</td>
 	</tr>



Mime
View raw message