установлен на моей машине:Странная Сложение Ошибка .Net Основной проект
- Visual Studio Pro 2015
- Visual Studio 2015 Update 3
- .NET Ядро 1.0.1 инструменты Preview 2
Примечание. Ошибка сборки возникает на компьютере с Windows 10 и Windows 7, но сборка работает на другой машине Windows 7.
Так что я мерзавец клонировать проект .Net ядро от другого разработчика, и когда я пытаюсь построить в Visual Studio 2015 Я получаю ошибку
«Система не может найти указанный файл в Microsoft.DotNet.Common. Мишени линия 262"
Перейти к строке 262 в C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ Dotnet \ Microsoft.DotNet.Common.Targets линии 262 Я вижу
<Dnx
RuntimeExe="$(SDKToolingExe)"
Condition="'$(_DesignTimeHostBuild)' != 'true'"
ProjectFolder="$(MSBuildProjectDirectory)"
Arguments="$(_BuildArguments)"
/>
Если удалить этот раздел из Microsoft.DotNet.Common.Targets project строит.
Я знаю, что dnx - это старая утилита .Net Core, моя догадка - это что-то в проекте. Json для библиотеки классов является устаревшим для старой dnx-оснастки и новой утилиты 1.0.1 Preview 2. .Net Core, которую я установил откладывает предыдущую запись project.json на старую запись инструмента dnx в Microsoft.DotNet.Common.Targets, но поскольку у меня нет установленного dnx инструментария, сборка не работает, конечно, это просто догадка.
Я активно искал в Интернете по этому вопросу, я found an article о том, чтобы положить "type": "platform"
для Microsoft.NETCore.App
зависимости в project.json, но я не использую эту зависимость, я попытался добавить "type": "platform"
к моей "NETStandard.Library"
зависимости, но это не помогло, то здесь мой project.json:
{
"version": "1.0.1-*",
"dependencies":
{
"Microsoft.AspNetCore.Mvc.Abstractions": "1.1.0",
"Microsoft.AspNetCore.Mvc.Core": "1.1.0",
"NETStandard.Library": "1.6.1",
"TSO.ProductItemList.Model": "1.0.2"
},
"frameworks":
{
"netstandard1.6":
{
"imports": "dnxcore50"
}
},
"scripts":
{
"postcompile":
[
"dotnet pack --no-build --configuration %compile:Configuration%",
"\"C:\\Program Files (x86)\\NuGet\\nuget\" push \"%project:Directory%\\bin\\%compile:Configuration%\\%project:Name%.%project:Version%.nupkg\" -s http://foo/NugetServer/ -apikey testkey"
]
}
}
Вот вывод сборки:
1>------ Build started: Project: TSO.ProductItemList.Model, Configuration: Debug Any CPU ------
1> C:\Program Files\dotnet\dotnet.exe build "C:\projects\tsl\ProductItemList\src\TSO.ProductItemList.Model" --configuration Debug --no-dependencies
1> Project TSO.ProductItemList.Model (.NETStandard,Version=v1.6) will be compiled because project is not safe for incremental compilation. Use --build-profile flag for more information.
1> Compiling TSO.ProductItemList.Model for .NETStandard,Version=v1.6
1> Producing nuget package "TSO.ProductItemList.Model.1.0.2" for TSO.ProductItemList.Model
1> TSO.ProductItemList.Model -> C:\projects\tsl\ProductItemList\src\TSO.ProductItemList.Model\bin\Debug\TSO.ProductItemList.Model.1.0.2.nupkg
1> Producing nuget package "TSO.ProductItemList.Model.1.0.2.symbols" for TSO.ProductItemList.Model
1> TSO.ProductItemList.Model -> C:\projects\tsl\ProductItemList\src\TSO.ProductItemList.Model\bin\Debug\TSO.ProductItemList.Model.1.0.2.symbols.nupkg
1>C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Common.Targets(262,5): error : The system cannot find the file specified
2>------ Build started: Project: TSO.ProductItemList.Client, Configuration: Debug Any CPU ------
2> C:\Program Files\dotnet\dotnet.exe build "C:\projects\tsl\ProductItemList\src\TSO.ProductItemList.Client" --configuration Debug --no-dependencies
2> Project TSO.ProductItemList.Client (.NETStandard,Version=v1.6) will be compiled because project is not safe for incremental compilation. Use --build-profile flag for more information.
2> Compiling TSO.ProductItemList.Client for .NETStandard,Version=v1.6
2> Producing nuget package "TSO.ProductItemList.Client.1.0.1" for TSO.ProductItemList.Client
2> TSO.ProductItemList.Client -> C:\projects\tsl\ProductItemList\src\TSO.ProductItemList.Client\bin\Debug\TSO.ProductItemList.Client.1.0.1.nupkg
2> Producing nuget package "TSO.ProductItemList.Client.1.0.1.symbols" for TSO.ProductItemList.Client
2> TSO.ProductItemList.Client -> C:\projects\tsl\ProductItemList\src\TSO.ProductItemList.Client\bin\Debug\TSO.ProductItemList.Client.1.0.1.symbols.nupkg
2>C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Common.Targets(262,5): error : The system cannot find the file specified
========== Build: 0 succeeded, 2 failed, 0 up-to-date, 0 skipped ==========
Дайте VS 2017 попробовать. Корпорация Майкрософт больше не поддерживает старую инструментальную технику. –
@LexLi VS 2015 считается старым инструментом? Почему первый шаг инструкций по установке Microsoft для .NET Core: «Загрузить Visual Studio 2015»? https://www.microsoft.com/net/core#windowsvs2015 –
просто потому, что он еще не 7 марта. Вероятно, они не хотят обновлять страницы дважды за такой короткий промежуток времени. –