天天看點

Nuget包制作最佳解決方案

最近研究ABP架構,下載下傳其全套源碼,想“據為己有”,這樣添加功能或者修改源碼的話就非常友善了,否則搭建項目直接用其官方的Nuget肯定是做不到的。

  源碼下好了,取其精華之處,編譯完美運作,然後問題就來了,這麼多類庫,如何将他們全部做成Nuget包呢,之前從主管那得到了個制作Nuget包的神器(NuGetPackageExplorer.application),然而制作起來相當費勁,每次都要打開該軟體,一個一個dll的添加,還需要配置相當多的引用,引用版本弄不好就弄錯了,然後整個Nuget就GameOver了,更新起來也相當費勁。

  最近做項目,又從主管那得知了制作的新招,采用檔案配置方式制作Nuget,那效率杠杠的,廢話不多說,開始吧:

  一、安裝(NuGetPackageExplorer.application)

    這個肯定是要的,因為Nuget包就是用這個工具來生成的,隻是我們把其操作方式改成了文本配置。

  二、在VS解決方案裡建立.nuget檔案夾

    其實此檔案夾名稱是可以随意,但是為了區分就給它命名為.nuget咯。

  三、在.nuget檔案夾裡面建立.xml格式的檔案,接着将此檔案字尾改成.nuspec

    為何不直接建立一個以.nuspec文本檔案呢?那是因為該檔案本身就是xml格式,如果采用文本格式,那麼VS就直接将其内容識别成普通的問題咯,更不會有xml相關的提示。

    新增的配置檔案如下:

    

Nuget包制作最佳解決方案

    四、添加配置内容

Nuget包制作最佳解決方案
Nuget包制作最佳解決方案

  其他都好說,但是項目依賴如果有N多個呢,難道要一個一個去找,然後加進來?其實大可不必,VS項目本身的配置檔案裡面都已經配好了,我們隻需要打開項目配置檔案,複制粘貼即可。

  

Nuget包制作最佳解決方案
Nuget包制作最佳解決方案

   

Nuget包制作最佳解決方案
Nuget包制作最佳解決方案

  注意:PackageRefreshce引用可能位于多個ItemGroup,都要加進去,對于系統引用(.NetFramework)無需加入(自測沒有問題,但是不保證不出問題)

  五、進入.nuget所在目錄,打開.nuspec檔案,Ctrl+S建立并儲存Nuget包

Nuget包制作最佳解決方案
Nuget包制作最佳解決方案

    至此大功告成,一定要注意以下幾點:

  1、項目引用的Nuget包一定要都配上去!

  2、系統引用可以無需配置!

  3、Nuget包的版本一定要配對!

繼續閱讀