ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gerry Healy <nickel_chr...@mac.com>
Subject Task doesn't support the nested * element
Date Mon, 14 Aug 2006 11:53:04 GMT
Hi there,

I am having trouble using third party ant tasks with nested elements, from the Ant API. For
example the ant-contrib IfTask and the svnant SvnTask.

I am able to use both of these tasks in build scripts without a problem, when running ant
from the command line. But I want to use them from the Ant API. However when I do this I get
an error similar to below, which is clearly not correct:

  build.xml:215: Class net.sf.antcontrib.logic.IfTask doesn't support the nested "equals"
element.

I'm running:

RedHat 9
Java 1.4.2 (build 1.4.2_03-b02)
Ant 1.6.0 (compiled on December 18 2003)

Any help would be appreciated. Thanks,

Gerry


The section of the build that is failing is trivial:

   <if>
     <equals arg1="yes" arg2="no" />
     <then>
       <echo message="same"/>
     </then>
     <else>
       <echo message="different"/>
     </else>
   </if>

And the taskdef is declared as below:

 <taskdef resource="net/sf/antcontrib/antlib.xml">
   <classpath refid="antlib.classpath" />
 </taskdef>


I've also tried the following declarations, which makes no difference

 <taskdef resource="net/sf/antcontrib/antlib.xml">
   <classpath>
     <pathelement location="/full/path/to/ant-contrib.jar" />
   </classpath>
 </taskdef>

 <taskdef name="svn" classname="net.sf.antcontrib.logic.IfTask">
   <classpath refid="antlib.classpath" />
 </taskdef>


The relevent API code is:

 String buildFile = "/path/to/build/file";
 String buildDir = "/path/to/build/dir";

 try {

   project.fireBuildStarted();
   project.init();

   project.setBaseDir( new File( buildDir ));
   project.setUserProperty( "ant.file", buildFile);
   project.setUserProperty( "ant.version", Main.getAntVersion());

   ProjectHelper projHelper = new ProjectHelperImpl();
   projHelper.parse(project, new File(buildFile));
   project.executeTarget( target );

 } catch( Throwable ex) {

   error = ex;               

 } finally {

   project.fireBuildFinished(error);

 }



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message