Использование проектов веб-развертывания Visual Studio 2008 - получение сообщения об ошибке aspnet_merge.exe

StackOverflow https://stackoverflow.com/questions/28765

  •  09-06-2019
  •  | 
  •  

Вопрос

Недавно я обновил проект веб-развертывания VS2005 до VS2008 - и теперь я получаю следующую ошибку при сборке:

The specified task executable location "bin\aspnet_merge.exe" is invalid.

Вот источник ошибки (из файла целей веб-развертывания):

<Target Name="AspNetMerge" Condition="'$(UseMerge)' == 'true'" DependsOnTargets="$(MergeDependsOn)">
    <AspNetMerge
      ExePath="$(FrameworkSDKDir)bin"
      ApplicationPath="$(TempBuildDir)"
      KeyFile="$(_FullKeyFile)"
      DelaySign="$(DelaySign)"
      Prefix="$(AssemblyPrefixName)"
      SingleAssemblyName="$(SingleAssemblyName)"
      Debug="$(DebugSymbols)"
      Nologo="$(NoLogo)"
      ContentAssemblyName="$(ContentAssemblyName)"
      ErrorStack="$(ErrorStack)"
      RemoveCompiledFiles="$(DeleteAppCodeCompiledFiles)"
      CopyAttributes="$(CopyAssemblyAttributes)"
      AssemblyInfo="$(AssemblyInfoDll)"
      MergeXmlDocs="$(MergeXmlDocs)"
      ErrorLogFile="$(MergeErrorLogFile)"
      />

Каково решение этой проблемы?

Примечание - я также создал проект веб-развертывания с нуля в VS2008 и получил ту же ошибку.

Это было полезно?

Решение

Очевидно, aspnet_merge.exe (и все другие инструменты SDK) НЕ упакованы в Visual Studio 2008.Visual Studio 2005 упаковала эти инструменты как часть своей установки.

Место, где это можно получить, - это установка Windows 2008 SDK (последняя загрузка).Windows 7 / Windows 2008 R2 SDK: здесь

Решение состоит в том, чтобы установить Windows SDK и убедиться, что вы установили FrameworkSDKDir в качестве переменной окружения перед запуском IDE.Пакетная команда для установки этой переменной:

SET FrameworkSDKDir="C:\Program Files\Microsoft SDKs\Windows\v6.1"

ПРИМЕЧАНИЕ:Вам нужно будет изменить, чтобы указать место, где вы установили SDK, если оно не находится в расположении по умолчанию.

Теперь VS2008 будет знать, где найти aspnet_merge.exe .

Другие советы

Я только что столкнулся с такой же проблемой, пытаясь использовать MSBuild для создания моего веб-приложения на сервере.Я скачал "веб" версию SDK, потому что размер установки составляет всего 500 КБ, и она запрашивает вас, какие компоненты установить, и загружает и устанавливает только те, которые вы выбираете.Я снял галочки со всего , кроме "Инструменты разработки .NET".Затем он загрузил и установил файлы объемом около 250 МБ, в том числе aspnet_merge.exe и sgen.exe

Вы можете загрузить программу установки winsdk_web.exe для Win 7 и .NET 3.5 с пакетом обновления 1 здесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top