2011-07-13 48 views
2

我正在構建一個大型項目,作爲構建的一部分我在一些xml中定義了一個路徑,並在導入它的另一個xml中重寫了它(或導入了一個文件導入它)。 我注意到導入順序和導入文件中重寫的路徑標記的位置改變了構建的行爲。 但是,我找不到它背後的邏輯。 導入過程如何工作? 謝謝導入文件mechanisem如何在Apache ANT中工作

回答

0

螞蟻屬性的值一旦設置就不能改變。如果您導入文件並且該文件設置了某些屬性,則在導入後與導入文件中的屬性具有相同名稱的任何其他屬性聲明都將被忽略。

假設您有一個外部文件file1.xml,它聲明瞭一個屬性foo。

file1.xml:<property name="foo" value="bar"/>

然後,在主文件,在那裏你關於財產申報FOO事項,你導入file1.xml。

假設你做的事:

<import file="file1.xml"/>

<property name="foo" value="baz"/>

然後物業foo將有bar值。 在另一方面,如果你這樣做:

<property name="foo" value="baz"/>

<import file="file1.xml"/>

然後物業foo將具有價值baz

故事的寓意是在導入同時聲明這些屬性的文件之前,定義您希望覆蓋其值的任何屬性。

請參閱http://ant.apache.org/manual/Tasks/property.html瞭解ant屬性任務文檔。

+0

我的問題是在螞蟻的導入機制,而不是屬性標記。有人知道導入是如何工作的嗎? –

+0

它是否也適用於重複的目標名稱? – Nav