It is necessary to set the path (cp) in the ant script depending on the value of the property

I want to set the cp path variable to one of two values ​​depending on the value of the property.

eg. the next thing I'm trying to achieve, but I'm not sure how to make it work properly ...

<if>
    <contains string="${jboss.home}" substring="jboss-4.2.3.GA"></contains>
    <then>
        <echo message="Using JBoss 4.2.3 classpath"/>
        <path id="cp"> 
        ...
        </path>
    </then>
    <else>
        <echo message="Using JBoss 4.0.5 classpath"/>
        <path id="cp">
        ...
        </path>
    </else>
</if>
+3
source share
2 answers
<condition property="usejboss423">
    <contains string="${jboss.home}" substring="jboss-4.2.3.GA"/>
</condition>

<target name="build.jboss.cp" depends="build.jboss.cp.423,build.jboss.cp.405"/>

<target name="build.jboss.cp.423" if="usejboss423">
    <path id="cp">
    ... JBoss 4.2.3 classpath
    </path>
</target>

<target name="build.jboss.cp.405" unless="usejboss423">
    <path id="cp">
    ... JBoss 4.0.5 classpath
    </path>
</target>
+6
source

If you need to do a lot of things, install AntXtras . You simply add the JAR file to the Ant class path, and you can do this:

<condition property="usejboss423">
  <contains string="${jboss.home}" substring="jboss-4.2.3.GA"/>
</condition>

<do if="usejboss423">
  ...
</do>

<do unless="usejboss423">
  ...
</do>

It has many other useful features.

+2
source

Source: https://habr.com/ru/post/1705099/


All Articles