[azure] Почему я получаю сообщение об ошибке «Цель GatherAllFilesToPublish не существует»?


Answers

У меня была эта проблема, и она была исправлена, добавив:

<Target Name="GatherAllFilesToPublish">
</Target>

в файл проекта. Я до сих пор не знаю, что происходит.

Question

Недавно я установил новые средства разработки Azure для пакета обновления для Visual Studio 2010 1. Каждый раз, когда я пытаюсь опубликовать существующий веб-сайт (используя развертывание файловой системы), я получаю следующую ошибку:

Цель проекта «GatherAllFilesToPublish» не существует в проекте.

Может ли кто-нибудь сказать мне, что мне не хватает?

благодаря




Удаление этих установок решило проблему для меня:

  • Microsoft Web Publish - Visual Web Developer Express 2010
  • Microsoft Web Publish - Visual Studio 2010

Reference




Для Visual Studio 2017 - он должен быть добавлен после блока в файле .csproj, используйте блокнот и найдите «.targets», чтобы найти его ...

Я создал новый проект VS 2017, и это работает для меня (без предупреждений):

  <PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
  </PropertyGroup>
  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
  <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
  <Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
    <AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />
  </Target>



Я боролся с той же проблемой с Visual Studio 2013 (и 2015).

Важнейшим VSToolsPath для меня было добавить параметр VSToolsPath , который отсутствовал в моем файле проекта по любой причине.

Я добавил это в директиву <PropertyGroup> :

<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>

В качестве дополнительной заметки: Мой файл проекта также ссылается на версию файла Microsoft.WebApplication.targets версии 10.0, но, похоже, все в порядке.




У меня была аналогичная проблема и разрешил ее, используя шаги, предоставленные Sayed.

Однако файл, который я переименовал, был в каталоге v10.0.

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets.

Исходный файл, который был там, был датирован 18 января 2011 года, после переименования его с расширением .bak, а затем переустановил KB2591016, публикация, похоже, снова работает. Новая дата файла Microsoft.WebApplication.targets теперь 11 августа 2011 года.




Поскольку проблема не может быть воспроизведена на моей стороне, я хотел бы предложить вам попробовать переустановить SDK.

Прежде чем устанавливать новый, попробуйте полностью удалить старый SDK.

С наилучшими пожеланиями,

Мин Сюй.




У меня такая же проблема в VS2013, решение, которое я нашел, было создание нового проекта пустого веб-приложения, который может копировать следующие строки из него в мой старый проект веб-сайта: Вверху:

<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />

<PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
  </PropertyGroup>
  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
  <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />



Решение Sayed не работало в моем проекте, который был обновлен с использованием VS2012. Но это сработало




Related