Почему я получаю предупреждение "SDK для платформы" net-2.0 "недоступен или не настроен". при запуске задачи с задержкой в ​​NAnt?

Я использую NAnt 0.85 в качестве сценария сборки. Часть сценария состоит в том, чтобы завершить процесс подписания сборок с подписью с задержкой, используя delay-sign задача.

Когда скрипт выполняется на сервере сборки, он запускается без проблем.

Когда я запускаю тот же скрипт на моей локальной машине для разработки, я получаю предупреждение:

The SDK for the 'net-2.0' framework is not available or not configured.
     at NAnt.Core.Tasks.ExternalProgramBase.DetermineFilePath()
     at NAnt.Core.Tasks.ExternalProgramBase.get_ProgramFileName()
     at NAnt.Core.Tasks.ExternalProgramBase.PrepareProcess(Process process)
     at NAnt.Core.Tasks.ExternalProgramBase.StartProcess()
     at NAnt.Core.Tasks.ExternalProgramBase.ExecuteTask()
     at NAnt.DotNet.Tasks.DelaySignTask.ExecuteTask()
     at NAnt.Core.Task.Execute()
     at NAnt.Core.Target.Execute()
     at NAnt.Core.Project.Execute(String targetName, Boolean forceDependencies)
     at NAnt.Core.Tasks.CallTask.ExecuteTask()
     at NAnt.Core.Task.Execute()
     at NAnt.Core.Target.Execute()
     at NAnt.Core.Project.Execute(String targetName, Boolean forceDependencies)
     at NAnt.Core.Project.Execute()
     at NAnt.Core.Project.Run()

Я почти уверен, что у меня установлен SDK с Visual Studio 2008/2010.

Почему я получаю эту ошибку и что я могу сделать для дальнейшей диагностики проблемы?

3 ответа

Решение

Ошибка в том, что у меня не было.NET 2.0 SDK. Я предположил, что SDK были установлены с Visual Studio, но, видимо, только текущая версия. На 2008 год это.NET 3.5 SDK, а не 2.0 и предыдущие версии не предоставляются.

Загрузка и установка 2.0 SDK от Microsoft решили проблему.

Я тоже столкнулся с этой проблемой. Я гарантировал, что 2.0 SDK был установлен, и я обновил до последней версии NAnt, но это не исправило это. Я проверил записи реестра и даже жестко запрограммировал расположение SDK в конфиге - все безрезультатно.

В конечном итоге мне удалось установить 32-разрядную версию.NET 2.0 SDK на мою 64-разрядную машину.

Для меня исправлением было обновить nant до 0.92. Ничего, что я делал с.NET 2.0 SDK, не работало.

Другие вопросы по тегам