You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ant.apache.org by Ninju Bohra <ni...@yahoo.com> on 2006/02/20 19:00:07 UTC
Am I using the selector (with mapper) correctly?
Hello all,
I need to keep a "derived" directory tree in synch with its source tree specifically with regard to deletions in the source tree.
The source tree has a collection of documents of various types (.doc, .xls, etc...). The real directory is full tree (with many sub-dirs)
\Documentation
--- Design.doc
--- Testing.doc
--- Plan.xls
While the "dervied" tree has the files converted to .pdf format (the base name are the same)
\PDFs
--- Design.pdf
--- Testing.pdf
--- Plan.xls
I am able to handles updates/additions to the \Documentation tree (via CruiseControl and build scripts) but I stuck on trying to propagate a deletion event. The follow target does not work:
<target name="missing">
<path id="need.to.delete">
<fileset dir="PDFs">
<present present="srconly" targetdir="Documentation">
<mapper type="glob" from="*.*" to="*.pdf"/>
</present>
</fileset>
</path>
<pathconvert targetos="windows" property="delete.me" refid="need.to.delete"/>
<echo>Need to delete ${delete.me}</echo>
</target>
When I run it with -d I get:
missing:
Could not load a dependent class (com/sun/media/jai/codec/FileSeekableStream) for type image
Adding reference: need.to.delete
Could not load a dependent class (com/sun/media/jai/codec/FileSeekableStream) for type image
Could not load class (org.apache.tools.ant.tasksdefs.cvslib.CvsVersion) for type cvsversion
Could not load a dependent class (jdepend/xmlui/JDepend) for type jdepend
fileset: Setup scanner in dir C:\CybeRe\PDFs with patternSet{ includes: [] excludes: [] }
[pathconvert] Set property delete.me =
Setting project property: delete.me ->
[echo] Need to delete
BUILD SUCCESSFUL
Basically nothing is picked up by the scanner.
As an FYI, I tried use <globmapper .../> instead of <mapper type="glob" .../> and got a:
BUILD FAILED
C:\CybeRe\build.xml:5: Class org.apache.tools.ant.types.selectors.PresentSelector doesn't support the nested "globmapper" element.
at org.apache.tools.ant.IntrospectionHelper.throwNotSupported(IntrospectionHelper.java:590)
which I did not expect.