我一直在研究MSBuild,因爲我需要自動化開發工作室的構建。我能夠輕鬆地編寫一個調用VS命令提示符並將MSBuild命令傳遞給它的.BAT文件。這工作得很好,有點漂亮。MSBuild - 如何從預寫的命令行命令構建.NET解決方案文件(在XML任務腳本中)
這裏是我的.BAT構建文件的內容:
call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\vcvars64.bat"
cd C:\Sandbox\Solution
msbuild MyTopSecretApplication.sln /p:OutputPath=c:\TESTMSBUILDOUTPUT /p:Configuration=Release,Platform=x86
pause
^這工作很好,但我現在需要使用的MSBuild任務的TeamCity CI。我試圖寫幾個MSBuild腳本,但我無法讓它們工作相同。什麼是我在.BAT文件中使用的命令的等效構建腳本?有任何想法嗎?
我一直在使用這樣的嘗試,但沒有成功(我知道這是不對的):
<?xml version="1.0"?>
<project name="Hello Build World" default="run" basedir=".">
<target name="build">
<mkdir dir="mybin" />
<echo>Made mybin directory!</echo>
<csc target="exe" output="c:\TESTMSBUILDOUTPUT">
<sources>
<include name="MyTopSecretApplication.sln"/>
</sources>
</csc>
<echo>MyTopSecretApplication.exe was built!</echo>
</target>
<target name="clean">
<delete dir="mybin" failonerror="false"/>
</target>
<target name="run" depends="build">
<exec program="mybin\MyTopSecretApplication.exe"/>
</target>
我只是需要的是一個MSBuild XML構建腳本編譯一個單一的解決方案用於發佈模式到指定的輸出目錄。任何幫助?
萬分感謝。現在如果我在「MySecretApplication.sln」中有一個我想排除的項目,我該怎麼做?我試過這個但它沒有工作......任何想法? –
D3vtr0n
2011-02-25 22:57:19
您需要在解決方案中設置構建配置(右鍵單擊解決方案節點並在Visual Studio中選擇配置管理器)。您可以創建一個新配置,爲其命名,並選擇要構建的項目。這存儲在解決方案文件中。在答案中的MSBuild文件中傳遞新的配置名稱。您目前可能具有調試和發佈配置,這些是標準名稱。 – 2011-02-25 23:25:55
謝謝,那很完美。 – D3vtr0n 2011-02-25 23:46:57