Xml 勾选「;“价值”;“的;“价值”;ant属性标记/元素的属性
我想检查属性值是否有一个应该从ant中的另一个文件读取的值 没有额外的罐子,任何人都可以Xml 勾选「;“价值”;“的;“价值”;ant属性标记/元素的属性,xml,ant,build,build-automation,xmltask,Xml,Ant,Build,Build Automation,Xmltask,我想检查属性值是否有一个应该从ant中的另一个文件读取的值 没有额外的罐子,任何人都可以 <property name="a" value="${input.password}" /> 要检查input.password是否从xyz.properties文件中获取了该值 非常感谢 三角帆 事实上,我必须用ant脚本检查这一行password=mypassword是否存在于.properties文件中。另一种方式是欢迎 编辑:我正在使用其中一个引用的解决方案,但没有成功: <
<property name="a" value="${input.password}" />
要检查input.password是否从xyz.properties文件中获取了该值
非常感谢
三角帆
事实上,我必须用ant脚本检查这一行password=mypassword是否存在于.properties文件中。另一种方式是欢迎
编辑:我正在使用其中一个引用的解决方案,但没有成功:
<property file="..\..\xyz\application.properties" prefix="input" />
<property name="foo" value="${input.password}"/>
<fail message="Property "foo" has no value">
<condition>
<not>
<equals arg1="${foo}" arg2=""/>
</not>
</condition>
</fail>
始终收到这样的消息:“属性“foo”没有值”,无论该行是否存在:password=de位于应用程序属性中。您可以尝试使用
块。例如,如果未定义db.schema,此操作将失败。你可能会发现一些有用的东西,这就是你想要的吗
也检查一下。哦,好的,我现在明白你的意思了,请试试这个(我使用的是Ant 1.8.2):
这是build.xml:
<project name="Bla" default="build" basedir=".">
<target name="build">
<property file="bla.properties"/>
<fail>
<condition>
<not>
<equals arg1="${foo}" arg2="bodo"/>
</not>
</condition>
</fail>
</target>
</project>
文件bla.properties包含foo=boo
,如果我将bodo
更改为boo
,它当前将失败
<project name="demo" default="dosomething">
<loadproperties srcFile="check.properties"/>
<target name="check">
<input message="Enter value" addproperty="input"/>
<condition property="input.matches">
<equals arg1="${input}" arg2="${valuefromfile}"/>
</condition>
</target>
<target name="dosomething" depends="check" if="input.matches">
<echo message="hello world"/>
</target>
</project>
您也可以检查到目前为止我还没有得到问题的答案。我尝试了所有参考的解决方案;但是他们都不工作。是的,毫无疑问,财产是有价值的;但该值是否获得了需要检查的值:。上述检查是否存在或是否有值,所以是,但这不是我想要的(如果我错了,请更正我):