🚫 Ad Blocker Detected

Please disable your AD blocker to continue using this site. Ads help us keep the content free! please press keyboard F5 to refresh page after disabled AD blocker

請關閉廣告攔截器以繼續使用本網站。廣告有助於我們保證內容免費。謝謝! 關閉後請按 F5 刷新頁面

0%

發布自己的Nuget專案

前言:

前陣子在被面試官說:我有電子發票開源專案,是否有上到Nuget上

我回答:沒有.

我就突然想到我也可以把我的專案放到Nuget上讓更多人方便使用

我就查詢資料去了解整個上板流程,並打成文章跟大家分享


下載Nuget Commandline Tool

下載Nuget Commandline Tool

之後你會取得 nuget.exe 這個檔案

把它放到你要打包Nuget的專案資料夾中

之後打開cmd 並在專案資料夾打上 nuget spce

之後在你資料夾中會出現 xxxx.nuspec的XML檔案,這個檔案是描述你要打包的專案

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<code class="language-xml"><?xml version="1.0"?>
<package >
<metadata>
<id></id>
<version></version>
<title></title>
<authors></authors>
<owners></owners>
<licenseUrl></licenseUrl>
<projectUrl></projectUrl>
<iconUrl></iconUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>This is a AOP framework</description>
<releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
<copyright>Copyright 2018</copyright>
<tags>c# AOP</tags>
</metadata>
</package>

必填欄位

  • ID:不區分大小寫的套件識別碼,在整個 nuget.org 或套件所在的任何組件庫中都必須是唯一的。 識別碼可能不包含對 URL 而言無效的空格或字元,而且通常會遵循 .NET 命名空間規則。 如需指導方針,請參閱選擇唯一的套件識別碼
  • Version:套件版本,遵循 major.minor.patch 模式。 版本號碼可以包含預先發行版本的後置詞,如套件版本控制中所述。
  • Description:UI 顯示中的套件詳細描述。

Authors:以逗號分隔的套件作者清單,與 nuget.org 上的設定檔名稱相符。這些名稱會顯示在 nuget.org 的 NuGet 組件庫中,並用來交互參照相同作者的其他套件。

打包Nuget

填完資料後就可以回到commandline 並打另一個指令nuget pack 將專案打包成 xxx.nupkg 檔案 以提供上傳

之後申辦一個Nuget帳號,並產生一個API Key

產生完後在上面的選單選擇 Upload 按鈕

之後按下Browse按鈕並上傳你的 xxxx.nupkg檔案,上傳完畢後就按下Submit按鈕 將此專案提交上去

上傳完畢後Nuget他會審核你的專案,等審核完後大家就可以下載使用你的專案摟^^

石頭已經打包專案

這兩個是我已經發布的專案

AwesomeProxy.Net

ElectronicInvoice_TW

Note

如果要查nuget指令可以打 nuget ?

參考連結:

.nuspec 參考

__此文作者__:Daniel Shih(石頭)
__此文地址__: https://isdaniel.github.io/deploy-ownnuget/
__版權聲明__:本博客所有文章除特別聲明外,均採用 CC BY-NC-SA 3.0 TW 許可協議。轉載請註明出處!

如果本文對您幫助很大,可街口支付斗內鼓勵石頭^^