2017-09-08 66 views
1

我將我的項目(https://github.com/MarkKhromov/The-Log)遷移到.NET標準2.0,我的appveyor構建已損壞。我如何解決這個問題?建立在appveyor .NET標準2.0

我的解決方案包括:

  • .NET標準項目
  • 控制檯應用程序項目
  • 類庫(測試)項目

我已經嘗試過這樣寫道:

DOTNET: 2.0.0 腳本: - dotnet恢復 - DOTNET建立

  • DOTNET構建TheLog/TheLog.csproj -c推出-f netstandard2.0
  • 的msbuild TheLog.Demos/TheLog.Demos.csproj/P:配置=鬆開
  • 的msbuild TheLog.Tests/TheLog.Tests.csproj/p:配置=調試
  • NUnit控制檯TheLog.Tests/TheLog.Tests.csproj

但每次我有錯誤

回答

1

你需要改變你的appveyor配置的VS 2017年形象,以構建.NET標準庫,並使用基於dotnet工裝csproj項目。

+0

AppVeyor基於'msbuild'的構建階段可以在Visual Studio 2017的.NET Standard 2.0項目中正常工作。但是,測試執行應該使用基於'dotnet'的工具來完成。 – ilyaf

+0

我看了一下你最近在master上提交的構建日誌,它使用了msbuild 14,所以我想你還沒有選擇2017年的圖像。順便說一句,如果測試執行是通過msbuild或'dotnet'完成的,它們都調用'VSTest' msbuild目標。 –

1

需要更改AppVeyor上的兩個設置。
1.更改Build worker imageVisual Studio 2017 - 環境設置
2.新增「DOTNET恢復」命令進入Before build scriptCMD - 構建設置

我已經證實了它一個新的空項目/解決方案設置。 NET標準2.0或.NET Core 2。