Не удается загрузить импортированный модуль с именем " Диагностика.'
Сборка из VS 2013 прерывается со следующей ошибкой:
C:Program файлы (x86)MSBuildMicrosoftVisualStudiov12. 0Windows Инструменты Azure2.5Microsoft.Вид из окна.цели (684,5): ошибка : CloudServices58: не удается загрузить импортированный модуль с именем " Диагностика.'
Файл ServiceDefinition.csdef
:
<ServiceDefinition name="MYWEBPROJECTNAME.Azure"
xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition"
schemaVersion="2014-06.2.4">
<WebRole name="MYWEBPROJECTNAME" vmsize="Small">
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
</ServiceDefinition>
Я попытался переустановить Azure SDK 2.5 отсюда http://azure.microsoft.com/en-us/downloads/ для VS 2013 и это не помогло.
Обновление
Он ломается на
<ValidateServiceFiles
ServiceDefinitionFile="@(SourceServiceDefinition)"
ServiceConfigurationFile="@(SourceServiceConfiguration)">
</ValidateServiceFiles>
Задача ValidateServiceFiles
вызывает Microsoft.ServiceHosting.Tools.MSBuildTasks.ImportResolver
и не может найти модуль "Диагностика". Задача получает свои модули из массива элементов задачи ImportedModules
.
Обновление 2
Похоже, что есть некоторый беспорядок с установкой VS 2012/2013. При запуске "VS2012 x86 Native Tools Command Prompt" (%comspec% /k ""C:Program Files (x86)Microsoft Visual Studio 11.0VCvcvarsall.bat"" x86
) msbuild отобразил эту ошибку. То же самое при запуске "Microsoft Azure Command Prompt-v2.5" (C:WindowsSystem32cmd.exe /E:ON /V:ON /K "C:Program FilesMicrosoft SDKsAzure.NET SDKv2.5\binsetenv.cmd"
).
C:SOMEPATHMYWEBPROJECTNAME.Лазурный.ccproj (72,3): ошибка MSB4019: Импортированный проект "C:Program файлы (x86)MSBuildMicrosoftVisualStudiov11. 0 Windows Azure Tools2.5Microsoft.Вид из окна.цели" не было найдено. Убедитесь, что путь в объявлении указан правильно и что файл существует на диске.
Удаление VS 2012 и восстановление VS 2013 не помогли.
2 ответа:
Мне пришлось удалить элемент из файла csdef, чтобы мой проект был скомпилирован. Затем я последовал этому http://msdn.microsoft.com/en-us/library/azure/dn186185.aspx#BK_Migration
Существует подход к диагностике между Azure SDK 2.4 и Azure SDK 2.5. Вы можете прочитать об изменениях в https://msdn.microsoft.com/en-us/library/azure/dn186185.aspx#BK_Migration . Тем не менее, у меня не было кода, на который повлияло изменение, но было ServiceDefinition.у csdef был импорт в диагностику.
<Imports> <Import moduleName="Diagnostics" /> <Import moduleName="RemoteAccess" /> <Import moduleName="Caching" /> </Imports>
Ошибка была вызвана поддержкой в Microsoft.Вид из окна.цели. Поскольку у меня не было кода, зависящего от импорта этих модулей, я просто прокомментировал эти два ссылки на и вещи построены прекрасно.