Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在连接两个现有属性时使用ant访问第三个属性?_Ant_Properties_El - Fatal编程技术网

在连接两个现有属性时使用ant访问第三个属性?

在连接两个现有属性时使用ant访问第三个属性?,ant,properties,el,Ant,Properties,El,所以我有一些类似下面的代码 <target name="testIt"> <property name="appname" value="ApplicationOne"/> <property name="ApplicationOne-serveraddress" value="http://ApplicationOne.com"></property> <property name="ApplicationTwo-s

所以我有一些类似下面的代码

<target name="testIt">
    <property name="appname" value="ApplicationOne"/>
    <property name="ApplicationOne-serveraddress" value="http://ApplicationOne.com"></property>
    <property name="ApplicationTwo-serveraddress" value="http://ApplicationTwo.com"></property>
    <echo message="${${appname}-serveraddress}"></echo>
</target>


有办法吗?显然,这不起作用

您可以使用其他属性的值定义属性。这就是你要找的吗

<target name="testit">
    <property name="a" value="a"/>
    <property name="b" value="b"/>
    <property name="aandb" value="${a}{b}"/>
    <echo message="hello ${aandb}"/>
</target>

新的ant支持一种使属性本地化的方法

<target name="testit">
    <property name="a" value="a"/>
    <property name="b" value="b"/>
    <local name="aandb" />
    <property name="aandb" value="${a}{b}"/>
    <echo message="hello ${aandb}"/>
</target>


这有助于避免不可变属性造成麻烦。

您可以使用其他属性的值定义属性。这就是你要找的吗

<target name="testit">
    <property name="a" value="a"/>
    <property name="b" value="b"/>
    <property name="aandb" value="${a}{b}"/>
    <echo message="hello ${aandb}"/>
</target>

新的ant支持一种使属性本地化的方法

<target name="testit">
    <property name="a" value="a"/>
    <property name="b" value="b"/>
    <local name="aandb" />
    <property name="aandb" value="${a}{b}"/>
    <echo message="hello ${aandb}"/>
</target>

这有助于避免不可变属性引起麻烦的情况。

基本上,您必须下载jar并包括

<project xmlns:props="antlib:org.apache.ant.props">
  <typedef uri="antlib:org.apache.ant.props"
    resource="org/apache/ant/props/antlib.xml"
    classpath="ant-props-1.0Alpha.jar"/>      
 <propertyhelper>
  <props:nested />
</propertyhelper>

别忘了xmlns。我下载了jar,基本上你必须下载jar并包括

<project xmlns:props="antlib:org.apache.ant.props">
  <typedef uri="antlib:org.apache.ant.props"
    resource="org/apache/ant/props/antlib.xml"
    classpath="ant-props-1.0Alpha.jar"/>      
 <propertyhelper>
  <props:nested />
</propertyhelper>


别忘了xmlns。我下载了这个罐子

@toskan:它在哪里?你没有接受答案。如果发布你的解决方案和你认为比当前更正确的答案,这会有所帮助。我举了一个更好的例子来说明我真正想做的事情。我也能给出答案@toskan:它在哪里?你没有接受答案。如果发布你的解决方案和你认为比当前更正确的答案,这会有所帮助。我举了一个更好的例子来说明我真正想做的事情。我也能给出答案