iT邦幫忙

6

發布自己的Nuget專案

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

我回答:沒有.

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

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

下載Nuget Commandline Tool

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

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

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

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

<?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 組件庫中,並用來交互參照相同作者的其他套件。

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

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

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

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

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

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

AwesomeProxy.Net

ElectronicInvoice_TW

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

參考連結:
.nuspec 參考


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

4
暐翰
iT邦大師 1 級 ‧ 2019-01-29 22:45:51

感謝D大分享
我最近也有做NuGet專案 : shps951023/HtmlTableHelper: Mini C# IEnumerable object to HTML Table String Library

我這邊也補充除了 CLI 外 Visual Studio 打包方式

↓ 在專案滑鼠右鍵 > 屬性
20190129223938-image.png

↓ 選擇套件 > 勾選建置時產生NuGet套件 > 填寫Nuget資料
20190129224003-image.png

↓ 選擇Release > 對專案選擇重建
20190129224029-image.png
20190129224206-image.png

↓ 最後可以在bin\Release資料夾下面看到nupkg檔案
20190129224055-image.png

↓ 接著上傳到NuGetNuGet Gallery | Upload Package
20190129224359-image.png

石頭 iT邦高手 1 級 ‧ 2019-01-29 23:30:03 檢舉

感謝暐翰大 分享UI版操作 ^^

我要留言

立即登入留言