Custom nuget package? Да легко!

Просто о NET | создано: 09.06.2011 | опубликовано: 09.06.2011 | обновлено: 13.01.2024 | просмотров: 8996

Пример создания, подписания и публикации своего собственного NuGet-пакета.

Решил я всё-таки попробовать, как можно сделать свой NuGet-пакет, тем более что это ужасно ужасно удобно и до безумия практично. Почитал, посмотрел… Значит так, создать свой NuGet-package можно несколькими способами, я покажу пока только один. Наверное потому, что он показался мне самым простым и наглядным.

Установка NuGet

Идем на страницу проекта и скачиваем NuGet Package Explorer.

image

Теперь пока на время забудьте про эту программу, потому как надо сначала подготовить что-либо для пакетирования.

Готовим пакет

Я решил сделать небольшую библиотеку, которая будет содержать два класса Person и People. Зачем? Объясняю. Очень часто приходится создавать приложения, например, консольное, чтобы протестировать то или иное, так или эдак. И каждый раз приходится создавать классы для этих самих тестов, а потом после проверки какой-нибудь идеи это приложение удаляется. А при наличии новой идеи, вновь всё повторяется. А при наличии такого пакета, всё упрощается в разы:

Команда для установки

PM> Install-Package SampleData

И в нашем проекте появляется сборка, в которой есть два класса:

image

И, собственно говоря, пачка этих самых Person:

image

Компилируем сборку. Получаем SampleData.dll

Регистрируемся

Идем на сайт http://nuget.org/ регистрируемся. После подтверждения почтового адреса, который Вы укажете при регистрации станет доступна страница Вашего аккаунта.

nuget_api_key

Перед Вами мой ключ, но у Вас будет свой. Этот ключ идентифицирует Вас как разработчика на сайте в галереи.

Время запускать Package Explorer

Я могу предположить, что у Вас уже есть логотип размером 100 х 100 пикселов формата PNG. Я, не долго думая, нарисовал себе некоторый логотип, который буду использовать для пакетов собственной сборки. Желательно чтобы у вас был свой, иначе вид иконки будет стандартный. Итак, после запуска программы Вы увидите окно наподобие этого:

image

Выберите пункт Edit –> Edit Package Metadata (CTRL+K) и заполните поля предложенные программой. Думаю, не имеет смысла рассказывать про каждое поле, всё достаточно интуитивно понятно. Вот пример, заполненного мной:

image

Теперь добавим контент в пакет. Нажимаем Content –> Add… Я создал папку, lib 4.0 и добавил в нее мою сборку:

image

Вроде бы всё. Пришло время публикации.

Публикация NuGet Package

Выбираем File –> Publish (CTRL+P) и перед нами окно, где потребуется ввести тот самый ключ API:

nuget_api_key_publish

Вводим ключи нажимаем Publish!

Готово. Буквальное через несколько минут после публикации мой пакет стал доступен для установки в библиотеке NuGet:

image

Да прибудет с Вами сила!

Обновление от 15.07.2011

Добавлен новый класс-наседник от Person. Теперь схема такова:

структура SampleData

 

Заключение

Спасибо за внимание.