Octopack для.Net 2.0 и msbuild 2.0
Я настраивал несколько проектов для сборки пакетов NuGet и отправки на сервер NuGet, чтобы впоследствии он мог использоваться Octopus Deploy.
Все было хорошо, пока мне не пришлось применить тот же процесс к устаревшим проектам. Ошибка была:
ошибка MSB4062: не удалось загрузить задачу "OctoPack.Tasks.CreateOctoPackPackage" из сборки...\OctoPack.Tasks.dll. Не удалось загрузить файл или сборку 'file:///...\OctoPack.Tasks.dll' или одну из ее зависимостей. Эта сборка создается средой выполнения, более новой, чем текущая загруженная среда, и не может быть загружена. Убедитесь, что объявление правильное и что сборка и все ее зависимости доступны.
Теперь я понимаю, что OctoPack не был создан для.Net 2.0, но просто удивляюсь, если кто-нибудь ударил / решил эту проблему.
2 ответа
Я закончил вносить поправки в код Octopack для работы с.Net 2.0 и MSBuild 2, который успешно применяется ко всем нашим приложениям.Net 2.0 и 3.5, упакованным на сервере CruiseControl.
Если кто-то находится в подобной ситуации, вот исправленный код (разветвленный из оригинального Octopack)
Можете ли вы изменить цель сборки приложения с 2.0 на более новую? Если это так, я бы обновил свое приложение, а не искал версию Octopack с пониженной версией.
Кроме того, вы можете использовать NuGet.exe для создания пакетов, а не OctoPack. Я на самом деле предпочитаю OctoPack, но NuGet.exe не будет заботиться о вашей версии.NET.