【问题标题】:Loading ant properties from other build files从其他构建文件加载 ant 属性
【发布时间】:2013-07-29 12:08:58
【问题描述】:

我想在我的 build.xml 中运行一个 ant 目标“run_junit”,它使用多个构建文件中定义的属性,比如各种子目录中的 junit.xml。在调用这个特定目标之前,我想从各个子目录中的所有 junit.xml 文件中加载所有属性。

我试过了

  1. 导入 junit.xml 文件 - 这不能在目标中导入。我不想总是导入文件。

  2. 读取目标中的 junit.xml 文件,例如“load_properties”,但在一个目标中设置的属性在另一个目标中不可用。

有人可以建议我实现这一目标的方法吗?

谢谢

【问题讨论】:

  • 属性必须存在于 build.xml 中是否有原因? @Arpit 指出,您可以包含它们。您可能会在这些属性中遇到相对路径问题。查看构建文件的ant.apache.org/manual/Tasks/import.html post sn-ps 下的“特殊属性” - 听起来可能有一种更优化的方式来做你想做的事情。每当您使用不同的输入(属性)多次调用目标时,使用宏可能会更好。记住 ant 属性不是变量。

标签: ant junit


【解决方案1】:

如果要在多个目标中使用属性,则必须全局导入它们。

要包含另一个 ANT 文件:

<include file="${path_to_file}/file.xml"/>

从另一个文件导入属性:

<property file="file_name.properties"/>

注意:这些都是全局定义

【讨论】:

  • 我只想为特定目标导入属性,而不是为每个目标导入属性。其次,属性是在构建文件而不是属性文件中定义的。
  • 来自您的问题 - “2. 读取目标中的 junit.xml 文件,例如 'load_properties',但在一个目标中设置的属性在另一个目标中不可用。”这是因为目标中定义的属性范围有限。另外,我相信您也可以加载构建文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-03-01
  • 2011-05-09
  • 2012-07-06
  • 1970-01-01
  • 2017-12-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多