2011-08-24 50 views
0

G'day。MSBuild未能實現CruiseControl 1.6

由於我們的TFS服務器升級到2010,我們已更新到ccnet 1.6。 在我們的ccnet.config中,我們正在執行包含MSBuild可執行任務的nant(0.9)構建腳本。

由惡性腳本中指定在與參數從命令行運行的MSBuild工作好,但由於某些原因,當CCNET通過它失敗,出現以下的惡性腳本執行MSBuild任務:

外部程序失敗:C :\ WINDOWS \ Microsoft.NET \框架\ v3.5版本\ MSBuild.exe(返回代碼爲128)

的惡性EXEC任務:

<property name="MSBuildPath" value="${framework.dir}\MSBuild.exe"/> 
    <exec program="${MSBuildPath}"> 
     <arg line="${project.svds}.sln" /> 
     <arg value="/t:Rebuild" /> 
     <arg value="/p:Configuration=Release" /> 
     <arg value="/p:Platform=x86" /> 
     <arg value="/verbosity:normal" /> 
     <arg line="/logger:'C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll'"/> 
    </exec> 

遺憾的是沒有更多的透露,這一切都非常模糊。

回答

2

128 There are no child processes to wait for

設置MSBuildPath如下,並嘗試...

<property name="MSBuildPath" value="C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe" />  

This線程可以幫助你。

編輯

可能這可能是由於該服務的用戶帳戶。它可能以本地系統帳戶運行。通過控制面板/管理工具/服務更改服務帳戶可能會有所幫助。

+0

對不起,我想我應該添加該framework.dir指向該目錄。我嘗試了你的建議,但沒有奏效 – sHr0oMaN

+0

我已經更新了答案。還有另一種猜測...... – CharithJ

+0

是的,它做到了。謝謝 – sHr0oMaN