簡體   English   中英

設置Nuget軟件包版本

[英]Setting Nuget package version

我正在使用VS2015,並從我擁有的某些C#項目中生成了一個Nuget包。

我將以下行用作我的帖子構建步驟:

nuget.exe pack $(ProjectDir)myproj.csproj -Version 0.1.0 -OutputDirectory $(SolutionDir)

一切都很好,但我想從外部txt文件(例如version.txt之類)傳遞版本號。 使用內部版本號作為最后一個版本整數將是一個加號

您可以編寫一個MSBuild任務來讀取文件,然后使用適當的參數調用nuget可執行文件。

集成自定義MSbuild任務很容易,只需手動編輯csproj文件,而不使用visualStudio的屬性編輯器即可。 生成后步驟實際上只是一個MSBuild任務,編輯器在其中填充您在其中編寫的命令。

如果環顧四周,您很可能會發現已經完成的任務可以完成您想要的(或大部分)工作。 快速搜索啟用了此功能https://msdn.microsoft.com/en-us/library/ms164299.aspx

您首先需要在一個單獨的步驟中獲取版本(nuget沒有為版本號加載文件的概念)

因此,要獲取您的DLL / exe之一的assemblyinfo,您可以執行以下操作:

for /F "tokens=4" %%F in ('filever.exe /B /A /D bin\debug\myproj.dll')    
do (
  set VERSION=%%F
)

通過執行以下操作,您可以類似地從文本文件中獲取版本:

for /f "tokens=1" %%F in (version.txt) do set VERSION=%%F

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM