1. 程式人生 > >搭建nuget 伺服器

搭建nuget 伺服器

前言

  搭建nuget伺服器,這是上家公司進行類庫管理的方式,其實優點很明顯,

  1.程式碼保密

  2.程式碼重複利用效率高,這樣不管任何專案只要知道nuget伺服器地址就能直接呼叫

  3.可進行版本任意切換提高程式碼差異性管理

1.部署nuget 伺服器

  因為我們的專案使用的是net core ,所以自己直接也是建立的net core專案,但是發現nuget server 不管是nuget server 還是nuget server core 對於net core 2.2 都不支援,故此選用了net mvc進行搭建nuget 服務(ps:如有解決請留言給我)。

  1.1.建立一個空專案這個很好解決在這不做過多闡述,如圖:

  1.2.找到對應版本Nuget.Server

        

  我建的專案是基於.Net Framework 4.6.1 所以選擇了3.4.1 版本,根據自己專案的版本選擇對應的版本即可。選擇之後專案中會自動生成Packages資料夾,修改web.config中  <add key="apiKey" value="npspackages2019" />q其中apikeyy用作上傳包的key

    1.3.執行專案

  

那麼nuget 服務就算搭好了,部署到iis即可。

2.nuget 打包

  在這裡我沒要用到的就是NuGet Package Explorer這個工具,下載即可。

  2.1開啟NuGet Package Explorer出現啟動介面,選擇Create a new package(Ctrl+N)建立一個新包

  2.2、選擇選單 Edit > Edit Package Metadata (或者 CTRL + K) 編輯包包資訊

  這裡可以編輯類庫包的資訊和新增類庫、程式集的引用解釋下幾個比較重要的欄位:

  Id:用於定位類庫包的唯一標示,

  Version:類庫的版本號,這裡建議和程式集的真實版本號保持一致,以免發生混淆

  Dependencies:此類庫依賴的程式集,根據實際情況新增依賴類庫的Id和版本號,若無留空即可,這裡需要注意下填寫的依賴類庫需要在NuGet伺服器上能找到,否則無法完成自動引用新增

  Framework assemblies:依賴的Framework 程式集,根據實際需要選擇即可,一般無需設定
  除以上四項以外其他屬性根據實際情況修改即可,若自己用不修改也中,不過為了使用方便還是建議把類庫描述(Description)填寫下

  2.3、新增dll

  右鍵-->Add Existinng File... 選擇dll新增,也可以直接拖拽DLL到 Package contents 視窗,此例選擇拖拽方式,直接拖拽dll到視窗後,會出現提示:是否將 Winista.HtmlParser.dll放到lib 資料夾下,一般我們選擇yes
  

資訊修改和dll都新增完畢後,選擇File --> Save(或Ctrl + S)將檔案進行儲存,預設檔名為Id + 版本號.nupkg 

 2.5、完成儲存後如需要釋出到網上,選擇File--> Publish...(或Ctrl + P)


如果想要釋出到nuget官網,釋出 Key需要到官網去註冊一個賬號獲取,方法一致。

3.使用

  使用的時候和咱們使用公共的nuget 包一致。

  3.1新增包源

  3.2選擇包源

  記得勾選【包含預發行版本】

這樣nuget 包管理伺服器就算搭好了。在版本中切換自己相應的版本即可。

 

 

 

 

     

 

  

&n