在前一篇,介紹了建置自有的NuGet Server,在這一篇要把我們開發好的元件佈署到NuGet server上,給需要引用的專案使用
本文範例使用Visual Studio 2017
使用NuGet Package Explorer 打包與佈署套件
NuGet Package Explorer - 按此下載
NuGet Package Explore提供了方便好用的GUI讓你打包你的組件,適合一次性發布組件使用
下載安裝完成後,打開會如下圖,選擇新建套件
開啟之後,左邊的選項可以設定一些資訊,例如Id、Version、Title…等等,比較重要的是Version(版號),套件上傳時,都要有新版號,有新版號在引用專案那邊才會知道有新的套件可以更新
右邊的視窗按右鍵,可以加入自己做好的組件,還有一些選項可以設定
- Add New File:加入新檔案至套件中
- Add Existing File:將既有檔案加入套件中
- Add New Folder:加入新的資料夾
各個資料夾的功用:
- Content Folder:要加到專案內的檔案,要放置這個資料夾下
- lib Folder:要實際加到專案參考內的檔案,要放置這個資料夾下
- Tools Folder:放置一些script,在套件剛安裝或是解除安裝的時候執行
- Build Folder:可以放置給MSBuild使用的target和property
- Src Folder:要加到專案內的原始檔,要放置這個資料夾下
我先準備一個簡單的類別庫,內容如下圖
把這個類別庫加入到我的套件中
接著要把這個做好的套件佈署上NuGet server,佈署之前要先儲存。之後在工具列的File,選擇publish
填入
- NuGet server的位置
- NuGet server的認證api key
確定好之後按publish
回到NuGet server 首頁的packages,有出現metadata就是有上傳成功
Visual Studio 加入NuGet server設定
接下來要回到Visual Studio,設定NuGet server的位址,讓我們的專案可以抓到我們自製的套件
在Visual Studio的工具->選項,找到NuGet 套件封裝管理員的套件來源,新增我們建好的NuGet server位址
接著新增一個專案,在NuGet套件管理視窗,套件來源就可以選擇自建的NuGet server,同時也會列出有什麼套件可以安裝
剛剛把類別庫的dll放進lib資料夾,所以一安裝套件就會自動幫我們參考了,在程式中就可以使用
我更新類別庫dll,再新增一個method,版號變更為1.0.1版,然後重複上面提到的打包套件步驟,在NuGet套件管理就會看到新版本的套件了,同時也可以隨時退版
不過使用NuGet Package Explore打包與佈署套件稍嫌麻煩,每一次更新版本都要建置好dll之後去操作GUI打包,實在是有點惱人,下一篇文章會介紹如何使用類別庫專案直接建置成功後佈署到NuGet server,使用上比較方便。