2010-08-24 76 views
0

我正在調整我們的部署腳本,並已移至每個定義的環境的外部配置文件。我將$ {environment}和$ {system}組件作爲命令行中的變量傳遞。如何在Nant中評估字符串作爲屬性名稱?

我加載配置$ {environment} .xml,其中包含一堆屬性定義。

<property name="server.component1" value="server01" /> 
<property name="server.component2" value="server02" /> 
<property name="drive.component1" value="C:\" /> 
<property name="drive.component2" value="D:\" /> 
<property name="unc.component1" value="\\${server.component1}\Builds\${system}\${build.date}" /> 
<property name="unc.component2" value="\\${server.component2}\Builds\${system}\${build.date}" /> 

確定服務器部署到,我需要結合「服務器」和$ {}系統,然後作爲一個屬性名評估。我在這裏錯過了一些東西。

<property name="server" value="${'server.' + system}" /><!-- TODO make this work --> 
<property name="server" value="server.${system}" /> 

回答

1

property::get-value function應該會有所幫助:

<property name="server" value="${property::get-value('server.' + system)}" /> 
+0

三江源這一點,正是我需要的 – 2010-08-24 13:48:42

+0

@Luke米 - 歡迎您! – 2010-08-25 07:15:03

相關問題