به نام خدا
اگر برنامه نویس دات نت باشید امکان نداره که با nuget تاحالا کار نکرده باشید . همون طور که میدونید با استفاده از این پلتفرم شما میتوانید به پکیج (DLL) ها که توسط افراد دیگر نوشته شده اند دسترسی پیدا کنید و به راحتی به پروژه ی خود اضافه کنید.
با استفاده از nuget (من میخوانم نیوگت) دیگه نیازی نیست DLL هاتون دستی به روز رسانی کنید و یا اگر میخوایید پروژتون به کس دیگه ای بدید همه DLL هارو همراهش بفرستید . با استفاده از تیوگت میتونید به راحتی اونهارو موقع کامپایل پروژه دانلود کنید ... به همین راحتی :)
حالا شاید شما هم مثل من علاقه مند باشید بدونید چطوری میشه سورسی که نوشتید توی نیوگت قرار بدید!؟
اصلا کار سختی نیست بیایید تا بهتون بگم ...
خب قدم اول این که باید یه پروژه جدید درست کنید چه پروژه ای ؟ پروژه ای از جنس Class Library به این صورت :
Open Visual Studio --> New Project --> windows classic Desktop --> Class Library (.NET framework)
بعد از این که پروژه ساخته شد توی کلاس که به صورت پیشفرض ایجاد شده یه متد به نام SayHello برای نمونه ایجاد میکنیم :
حالا پروژه آماده است تا پکیجش رو ایجاد کنیم
خب بریم سراغ مراحل ایجاد پکیج :
روی پروژه تون کلیک راست کنید و روی گزینه ی Properties کلیک کنید در سر برگ Application میتونید Assembly Information ببینید
با انتخاب این گزینه یک سری فیلد به شما نمایش داده میشه که مربوط به اطلاعت پروژه ایجاد شده است :
این اطلاعات میتونید ویرایش کنید با ویرایش کردن این اطلاعات به نمایش مشخصات پروژتون در نیوگت کمک میکنید
Title : عنوان پروژتون هست
Description : توضیحات مربوط به پروژه
Company : نام شرکت تولید کننده - اسم شخصی خودتون میتونید بزنید
Product : نام محصول
Assembly version : نسخه اسمبلی شما
File Version : نسخه فایل پروژه شما
بعد از این که این اطلاعات به روز کردید روی پروژه کلیک راست کنید و گزینه Rebuild انتخاب کنید راستی توجه کنید که پروژه رو حالت Debug باشه نه Release
برای ایجاد این فایل نیاز داریم به فایل Nuget.exe که میتونید از لینک زیر دانلود کنید :
https://www.nuget.org/downloads
در این لینک شما میتوانید نسخه های مختفل نیوگت CLI مشاهده کنید که در زمان نگارش این مقاله نسخه 4.6.2 آخرین نسخه این CLI بود.
بعد از دانلود این فایل اون به یه مسیری منتقل کنید
در این مرحله باید این CLI به cmd بشناسونیم چون در صورتی که این کار نکنیم نمیتونیم ازش استفاده کنیم برای این کار باید به این روش عمل کنید :
روی This PC کلیک راست کنید و روی گزینه ی properties کلیک کنید و بعد به Advanced system settings مراجعه کنید :
در این صفحه گزینه ی Environment Variables انتخاب کنید در صفحه ای که باز شد در قسمت System Variables قسمت Path را انتخاب کنید :
بعد از کلیک کردن روی گزینه بالا صفحه ای باز میشود دنبال یک ردیف را New کنید و آدرس فولدری که فایل nuget.exe در آنجا قرار دارد را به اضافه کنید و تایید کنید.
بعد از این کار میریم سراغ ایجاد فایل مورد نظر باید برید توی مسیر پروژتون که فایل با پسوند .csproj داره وقتی وارد اون فولدر شدید با نگه داشتن دکمه Shift روی قسمت خالی صفحه کلیک راست کنید :
روی گزینه Open Powershell windows here (شاید در سیستم شما این باشد :Open Command Prompt) کلیک کنید :
باز زدن این گزینه محیط کامند براتون باز میشه حالا این تایپ کنید :
nuget spec
با تایپ کردن این دو کلمه در صورتی که به ارروری بر نخورید یک فایل براتون ایجاد میشه با این عنوان :
HelloNuget.nuspec
این فایل را با یک ادیتور متن باز کنید من بهتون VS Code پیشنهاد میکنم بعد از باز کردن اطلاعات زیر را مشاهده خواهید کرد :
در این فایل قسمت هایی که با $ شروع و پایان یافته اند اطلاعاتشون از همون Assembly Information گرفته میشه ولی بقیه بخش هارو میتونید وارد کنید .
سه تا لینک داریم که میتونید آدرس سایتتون وارد کنید داخلشون و اگر IconUrl بدید اون آیکونی که دوست دارید روی پکیج نیوگت شما قرار میگیرد
و همچنین Tag ها کلمات کلیدی مرتبط با پکیج شما هست تا راحتتر در موتور های جستجو و موتور جست جو خود Nuget یافت شوند.
بعد از این که این فایل تغییر دادید آن را ذخیره کنید
نکته مهم : لینک های LicenseUrl , ProjectUrl , LicenseUrl نمیتواند خالی باشد !!
حالا باید پکیج آماده کنیم در این قسمت به صورت مرحله قبل cmd رو باز میکنیم ولی اینبار این عبارت تایپ میکنیم :
nuget pack
بعد از تایپ کردن این عبارت در صورتی که به خطایی بر نخوریم پکیج ما آماده میشه
دقت کنید که حتما از پروژه تو حالت Debug و Release بیلد گرفته باشید
در پایان میتونید یک پیج به نام خودتون توی سایت nuget.org ایجاد کنید و این پکیج خودتون آپلود کنید تا همه بتونن ازش استفاده کنن
برای مطالعه دقیق تر به لینک داکیمونت ماکروسافت مراجعه کنید :
https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-visual-studio-net-framework
موفق و پیروز باشید