Пытаюсь собрать мой проект через наш внутренний сервер TeamCity, и я сталкиваюсь с проблемой с версиями SDK.Первый шаг - это команда dotnet restore
в моем проекте, которая завершается с ошибкой:
[12:51:55] Updating sources: auto checkout (on agent) (42s)
[12:52:38] Step 1/5: Restore (.NET CLI (dotnet)) (5s)
[12:52:39] [Step 1/5] dotnet.exe restore MySolution.sln @D:\teamcity\buildagent2\temp\agentTmp\a057a13bb8fb4a43a4b14c8cebf2d41a.rsp
[12:52:39] [Step 1/5] restore (4s)
[12:52:39] [restore] Starting: "C:\Program Files\dotnet\dotnet.exe" restore MySolution.sln @D:\teamcity\buildagent2\temp\agentTmp\a057a13bb8fb4a43a4b14c8cebf2d41a.rsp
[12:52:39] [restore] in directory: D:\teamcity\buildagent2\work\48acce6beee4a7d3
[12:52:43] [restore] c:\Program Files\dotnet\sdk\2.0.2\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets(135,5): error : The current .NET SDK does not support targeting .NET Core 2.1. Either target .NET Core 2.0 or lower, or use a version of the .NET SDK that supports .NET Core 2.1.
[12:52:43] [restore] C:\Program Files\dotnet\sdk\2.1.2\NuGet.targets(103,5): warning : Unable to find a project to restore!
[12:52:43] [restore]
[12:52:43] [restore] Build succeeded.
[12:52:43] [restore]
[12:52:43] [restore] C:\Program Files\dotnet\sdk\2.1.2\NuGet.targets(103,5): warning : Unable to find a project to restore!
[12:52:43] [restore] 1 Warning(s)
[12:52:43] [restore] 1 Error(s)
[12:52:43] [restore]
[12:52:43] [restore] Time Elapsed 00:00:01.84
[12:52:43] [restore]
[12:52:43] [restore]
[12:52:44] [restore] c:\Program Files\dotnet\sdk\2.0.2\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets(135,5): error : The current .NET SDK does not support targeting .NET Core 2.1. Either target .NET Core 2.0 or lower, or use a version of the .NET SDK that supports .NET Core 2.1.
[12:52:43] [restore] Process exited with code 0
[12:52:43] [Step 1/5] Step Restore (.NET CLI (dotnet)) failed
[12:52:44] Publishing internal artifacts
[12:52:44] Build finished
Насколько я могу судить, она вызывает два разных SDK, и мои цели проекта .NETCore 2.1.Я попытался указать цель проекта (одно решение для проекта):
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
<IsPackable>false</IsPackable>
<GenerateProgramFile>false</GenerateProgramFile>
<OutputType>Exe</OutputType>
<StartupObject>MyProject.Program</StartupObject>
</PropertyGroup>
</Project>
Я также попытался указать целевую версию SDK через файл global.json
, на который ссылается здесь :
{
"sdk": {
"version": "2.1.200"
}
}
Все они встретились с той же ошибкой, что и в журнале сборки, который я предоставил.Может кто-нибудь дать предложение о том, как решить эту проблему?