ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gilles Scokart" <gscok...@gmail.com>
Subject Re: How to create if condition task from maven
Date Wed, 15 Oct 2008 13:18:35 GMT
Try to add a taskdef.


2008/10/15 Miroslav Nachev <m.nachev@prosyst.bg>:
> 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: user-unsubscribe@ant.apache.org
> For additional commands, e-mail: user-help@ant.apache.org
>
>



-- 
Gilles Scokart

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


Mime
View raw message