У меня возникла проблема с развертыванием в ресурсе веб-приложения Azure, который я настроил. Я не могу найти много информации об этой ошибке в Интернете, поэтому размещаю здесь …
У меня есть решение .NET с основным проектом и несколькими проектами библиотеки классов, на которые я делаю ссылки в своем основном проекте.
По какой-то причине развертывание не удается, потому что оно не включает эти проекты DLL в решение. Мой код находится в репозитории bitbucket, и я настроил его для развертывания на ресурсе моего веб-приложения всякий раз, когда я совершаю фиксацию в определенной ветке.
Но это не срабатывает с этой ошибкой:
Command: "D:\home\site\deployments\tools\deploy.cmd"
Handling .NET Web Application deployment.
MSBuild auto-detection: using msbuild version '14.0' from 'D:\Program Files (x86)\MSBuild\14.0\bin\amd64'.
All packages listed in packages.config are already installed.
Invalid restore input. Missing required property 'OutputPath' for project type 'PackageReference'. Input files: D:\home\site\repository\XXXCode\XXXXX.Entities\XXXXX.Entities.csproj.
Failed exitCode=1, command=nuget restore "D:\home\site\repository\XXXCode\XXXCode.sln"
An error has occurred during web site deployment.
Invalid restore input. Missing required property 'OutputPath' for project type 'PackageReference'. Input files: D:\home\site\repository\XXXCode\XXXXX.Entities\XXXXX.Entities.csproj.\r\nD:\Program Files (x86)\SiteExtensions\Kudu\82.10503.3890\bin\Scripts\starter.cmd "D:\home\site\deployments\tools\deploy.cmd"
Я пропустил шаг здесь? Я новичок в этом, поэтому я, вероятно, где-то забыл шаг. Любая помощь очень ценится, спасибо!
Согласно этому сообщению об ошибке, очевидно, вы используете версию MSBuild 14.0 (инструменты VS 2015).
А также из этого сообщения:
Насколько я понял,
PackageReference
работает только с MSBuild версии 15 и выше, а не с 14.0. Поскольку он шел с VS 2017 и одновременно с MSBuild 15.0.Итак, для решения этой ошибки я рекомендую вам попробовать более новую версию: MSbuild 15.0.
Вы также можете обратиться к этому билету: Отсутствует необходимое свойство OutputPath для проекта введите PackageReference
Изменить:
Во-первых, убедитесь, что ваш скрипт может быть успешно выполнен в VS2017 локально.
А затем, если вы выполняете сборку с помощью задачи сборки Visual Studio, измените
Visual Studio Version
как:Или, если вы используете его задачу MSBuild, просто нужно изменить
MSBuild Version
:С другой стороны, если вы используете
Specify Location
вместоVersion
в задаче MSbuild, укажите путь к папке MSBuild.exe, который в MSBuild 15.0. Для меня я использую VS2019, поэтому расположение MSbuild 16.0:Обновление:
Поскольку вы используете VS2017, вы можете указать местоположение MSbuild 15.0 с вашим путем к файлу MSbuild 15.0 как:
Спасибо. У меня сейчас VS2017. Возможно, проект начался с VS2015, но затем перешел в 2017 год. Вы знаете, как этот проект указывает на MsBuild 15.0? — person BellaGurl; 17.07.2019
Я обновил свой ответ, пожалуйста, проверьте его и не стесняйтесь сообщать мне последние достижения — person BellaGurl; 17.07.2019
@BellaGurl Привет, как дела? Сможете ли вы правильно найти сборку msbuild 15.0 и успешно выполнить сборку? — person BellaGurl; 25.07.2019