4

NAnt 0.92 では、プロパティを定義し、すぐにその存在を確認します。存在しません...しかし、呼び出されたターゲットに存在します。これはバグですか、それとも機能ですか?!? ドキュメントを検索しましたが、それについての言及が見つかりませんでした。

<target name="test">
  <property name="testprop" value="test value" />

  <echo message="property value = ${testprop}" />

  <if test="${property::exists(testprop)}">
     <echo message="property exists, as it should!" />
  </if>

  <if test="${not property::exists(testprop)}">
     <echo message="property doesn't exists... WTF?" />
  </if>

  <call target="test2" />
</target>

<target name="test2">
  <echo message="property value in sub-target = ${testprop}" />
</target>

出力:

テスト:

 [echo] property value = test value
 [echo] property doesn't exists... WTF?

テスト2:

 [echo] property value in sub-target = test value
4

1 に答える 1