算术计算 属性

Compute property arithmetically

简而言之,我无法根据构建文件中的 属性 进行计算。

假设我有:

<property name="basedir" value="${project.basedir}" /> <--当前值73

我如何知道前 3 个构建(72,7170)或者我如何计算这些值(基于 basedir 属性)?

我试过了(无视补充):

  1. <property name="basedir" value="${project.basedir}+1" /> <--但它连接了值:73+1

  2. <property name="basedir" value="${project.basedir+1}" /> <--但这是错误的:build_${env.BUILD_NUMBER+1}

场景:删除旧版本(保留一些版本以防回滚)

P.S: 重复的 link 无效,因为这是通过 PHING 而非 蚂蚁

您可以为此使用 adhoc-task

  <?xml version="1.0"?>
  <project default="main" phingVersion="2.11.0">
  <property name="basedir" value = "73"/>
  <adhoc-task name="increment"><![CDATA[
  class increment extends Task {
      private $value;

      function setvalue($value) {
          $this->value = $value;
      }
     function setProperty($property) {
         $this->property = $property;
      }

     function main() {
         $this->project->setProperty($this->property, ((int) $this->value + 1));
      }
  }
  ]]></adhoc-task>
  <target name="main">
  <echo>${basedir}</echo>
  <increment value="${basedir}" property="basedir"/>
  <echo>${basedir}</echo>
  </target>
  </project>