On 3/7/07, Andrew Close <[EMAIL PROTECTED]> wrote:
On 3/2/07, Dominique Devienne <[EMAIL PROTECTED]> wrote:
> On 3/2/07, Andrew Close <[EMAIL PROTECTED]> wrote:
> > we currently have a file included with our projects called 'jar.list'.
> >  this file contains a list of JAR files that the project depends upon.
> > i.e.
> >
> > apache-ant-1.7.0.jar
> > productA.jar
> > productB.jar
> > etc.jar
> >
> > i'd like to be able to convert the contents of this file into a
> > path-like structure:
> >
> > <path id="my.dependencies">
> >   <pathelement location="lib/apache-ant-1.7.0.jar"/>
> >   <pathelement location="lib/productA.jar"/>
> >   <pathelement location="lib/productB.jar"/>
> >   <pathelement location="lib/etc.jar"/>
> > </path>
> >
> > i've looked at FileSet/FileList and LoadFile/LoadProperties, but they
> > don't appear to be quite what i'm looking for.  is there another task
> > that does this?  or am i just not seeing/understanding how to do it
> > with the core tasks?
>
> <path> <fileset dir="lib" includesfile="jar.list" /> </path> should work.
> It does assume all the jars in jar.list are under lib/, with relative
> paths. --DD

Dominique,

thanks for the response.  i'll give this a try.  it looks almost too easy. :)

thanks again,
andy


for completeness i'll respond to my post and list my current solution...

<target name="eclipse" depends="init">
 <path id="eclipse.classpath">
   <fileset dir="${seed.lib.dir}"
includesfile="${ant.project.name}.dependencies" />
 </path>
 <pathconvert property="eclipse.entries" refid="eclipse.classpath"
targetos="windows"/>
 <ant antfile="${cns.script.root}/eclipse.xml" inheritAll="true" />
</target>

so i set up the path using the fileset as Dominique had suggested
(thank you), but to get the paths written out properly i needed to use
the pathconvert task.  i then call my eclipse.xml task based on a
script put together by Stefanie Tellex
(http://people.csail.mit.edu/stefie10/antAndEclipse.html) to create a
.classpath:

<project name="eclipse" default=".classpath">
 <target name=".classpath">

   <echoxml file=".classpath">
     <!--?xml version="1.0" encoding="UTF-8"?-->
     <classpath>
       <classpathentry kind="src" path="${src.dir}"/>
       <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
       <classpathentry kind="lib" path="${eclipse.entries}"/>
       <classpathentry kind="output" path="${build.dir}"/>
     </classpath>
   </echoxml>
                
   <replace file=".classpath" token="!--" value=""/>
   <replace file=".classpath" token="--" value=""/>

 </target>
</project>

this outputs a .classpath file that can then be used by an eclipse project.
hopefully this will help someone else in the future.

andy

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to