2010-12-04 106 views

回答

2

在FinalBuilder 6中,您可以使用MSBuild任務。然而說實話,在我們的構建腳本中,我發現使用批處理文件和「執行程序」是一個更好的解決方案。

編輯:快速做一些閱讀這個主題我現在記得我爲什麼使用批處理文件。 FB6 MSBuild操作有點違反直覺,因爲不是所有的屬性都可以從「默認視圖」訪問,而需要更改爲「屬性網格」。

更新:從您的評論;如果你想運行一個單獨的MSBuild任務而不使用'執行程序'動作,那麼你將需要創建自己的FB動作。我從來沒有自己創建過自定義操作,但顯然它們非常簡單。

這是我使用的批處理文件:

@ECHO off 
SET Action=%1 
SET Configuration=%2 
SET Platform=x86 
SET CommonTools=%VS90COMNTOOLS% 
SET SourceDir=%CD%\..\.. 
SET SolutionFilename=Solution.sln 
SET MSBuild=C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe 

IF "%Action%" == "" SET Action=Rebuild 
IF "%Configuration%" == "" SET Configuration=Release 

:BUILD 
%MSBuild% "%SourceDir%\%SolutionFilename%" /v:m /t:%Action% /p:Configuration=%Configuration% /p:DenEnvDir="%CommonTools%..\IDE\" /p:SolutionDir="%SourceDir%" /p:Platform=%Platform% 

:END 
ECHO. 
ECHO ErrorLevel: %ERRORLEVEL% 
EXIT /B %ERRORLEVEL% 
+0

FB沒有MSBuild任務。它有「MSBuild項目」行動使用它看起來像解決方法。順便說一句,你爲什麼認爲屬性網格不如一個單獨的腳本直觀? – Restuta 2010-12-04 22:38:07

+0

啊,對不起,我現在沒有安裝FB。它一定是我正在考慮的'MSBuild項目'。關於屬性網格的評論特定於在FB中編輯動作;尤其是MSBuild項目。我在開發軟件時經常使用屬性網格,因爲我需要向用戶展示大量動態數據。 – Dennis 2010-12-05 06:47:33

0

你不能只是運行從另一個應用程序內的MSBuild任務沒有實例它所依賴的MSBuild的環境。您至少需要一個msbuild項目文件。