2017-02-17 111 views
1

我有一個解決方案,它有幾個VC++項目。我正在嘗試使TFS每週構建一次。我已經建立了TFS Build控制器和代理。我使用DefaultTemplate.xaml文件創建了一個構建定義,並且我可以成功構建一些項目。如何在TFS 2013構建定義中使用默認項目輸出位置?

問題是我的項目依賴於已經簽入調試/釋放文件夾的一些庫。 TFS正試圖將項目輸出(dll和exes)放到$(SolutionDir)\ Binaries目錄中。由於依賴庫不存在於此位置,因此TFS構建失敗。

我想要做的是使用我自己的項目輸出位置,並以某種方式將輸出文件複製到服務器中的某個位置。

我該怎麼做?

謝謝

回答

1
  1. 它不建議在圖書館TFS檢查,你可以使用的NuGet恢復包。

  2. 對於構建輸出,您可以在構建定義中指定放置文件夾並將輸出複製到放置文件夾。

enter image description here

  • 您還可以檢查在複製輸出的腳本,並指定在您的XAML構建定義一個生成後腳本路徑。 This腳本從典型位置收集一些典型的二進制類型,並將它們複製到TFBuild從其中複製並下載到暫存位置的文件夾。在網站查詢更多有關運行在您的XAML構建過程的腳本: https://msdn.microsoft.com/library/dn376353%28v=vs.120%29.aspx
  • +0

    (1)不幫助我。依賴庫不是衆所周知的庫。他們是行業特定的,昂貴的。這是他們一直在做的方式。 (2)我已經這麼做了。 (3)這解決了我的問題。正如你指出的那樣,我使用了PowerShell腳本。但是,我的默認模板中沒有Post Build腳本路徑。所以,我不得不編輯我的模板並調用腳本。謝謝! – cbr

    0

    我建議編輯您的構建定義。根據流程部分,設置MSBuild參數

    /p:GenerateProjectSpecificOutputFolder=true 
    

    如下:

    enter image description here

    +0

    使用此選項只是把dll文件到一個名爲其項目目錄,在相同的放置位置。 – cbr

    相關問題