Try to add a taskdef.
2008/10/15 Miroslav Nachev <[EMAIL PROTECTED]>:
> Hi,
>
> I have one ant build file which is called from maven. In that ant file I
> would like to do something only if some condition is false. In my current
> case the condition is:
> <available file="${mprm.bin.dir}/mprm" property="mprm.file.exists"/>
> <echo message="mprm.file.exists=${mprm.file.exists}"/>
> <if>
> <equals arg1="${mprm.file.exists}" arg2="false"/>
> <then>
> <get src="${bundlecloud.source.uri}/${mprm.zip}"
> dest="${ant.base.dir}/${mprm.zip}"
> usetimestamp="true"/>
> <unzip src="${ant.base.dir}/${mprm.zip}" dest="${ant.base.dir}"/>
> <chmod file="${mprm.bin.dir}/mprm" perm="+x"/>
> </then>
> </if>
>
> The problem is when I try to use "<if>" element:
> Embedded error: The following error occurred while executing this line:
> ... Could not create task or type of type: if.
>
> Ant could not find the task or a class this task relies upon.
>
> This is common and has a number of causes; the usual
> solutions are to read the manual pages then download and
> install needed JAR files, or fix the build file:
> - You have misspelt 'if'.
> Fix: check your spelling.
> - The task needs an external JAR file to execute
> and this is not found at the right place in the classpath.
> Fix: check the documentation for dependencies.
> Fix: declare the task.
> - The task is an Ant optional task and the JAR file and/or libraries
> implementing the functionality were not found at the time you
> yourself built your installation of Ant from the Ant sources.
> Fix: Look in the ANT_HOME/lib for the 'ant-' JAR corresponding to the
> task and make sure it contains more than merely a META-INF/MANIFEST.MF.
> If all it contains is the manifest, then rebuild Ant with the needed
> libraries present in ${ant.home}/lib/optional/ , or alternatively,
> download a pre-built release version from apache.org
> - The build file was written for a later version of Ant
> Fix: upgrade to at least the latest release version of Ant
> - The task is not an Ant core or optional task
> and needs to be declared using <taskdef>.
> - You are attempting to use a task defined using
> <presetdef> or <macrodef> but have spelt wrong or not
> defined it at the point of use
>
> Remember that for JAR files to be visible to Ant tasks implemented
> in ANT_HOME/lib, the files must be in the same directory or on the
> classpath
>
> Please neither file bug reports on this problem, nor email the
> Ant mailing lists, until all of these causes have been explored,
> as this is not an Ant bug.
>
> In my pom file (maven) I am included ant-contrib as follow:
> <dependencies>
> <dependency>
> <groupId>ant-contrib</groupId>
> <artifactId>ant-contrib</artifactId>
> <version>1.0b2</version>
> </dependency>
> </dependencies>
>
> What is wrong and is there another way to do some condition check?
>
>
> Regards,
> Miro.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
--
Gilles Scokart
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]