Dot-Net
如何將 dotnet-pack –version-suffix 與 csproj 一起使用?
我正在嘗試使用 .net Core tools RC4 dotnet pack 命令創建一個帶有後綴的 nuget 包。
我可以成功創建“MyProject.1.2.3.nupkg”,但我想要“MyProject.1.2.3-beta.nupkg”。
根據此處的文件, –version-suffix “使用指定的字元串更新 -* 包版本後綴中的星號。”
我設法找到了 dotnet pack 從哪裡獲取它的版本 - dotnet pack 在幕後使用 msbuild,它使用 csproj 文件中的
<version/>元素。例如,<version>1.2.3</version>創建一個名為“MyProject.1.2.3.nupkg”的文件。如果我將
<version/>csproj 中的設置為 1.2.3 並指定 –version-suffix beta 那麼它不會附加 -beta 但它會建構。如果我將版本設置為,
<version>1.2.3-*</version>則 dotnet restore 會中斷說 ‘1.2.3-*’ 不是有效的版本字元串。我想我很接近了;我做錯了什麼?
根據文件,該
Version屬性會覆蓋打包時的版本,而是使用VersionPrefix.<PropertyGroup> <VersionPrefix>1.0.0</VersionPrefix> </PropertyGroup>並使用命令打包解決方案:
dotnet pack --version-suffix beta您可以選擇在文件中設置
VersionPrefix和。VersionSuffix``.csproj<PropertyGroup> <VersionPrefix>1.0.0</VersionPrefix> <VersionSuffix>alpha</VersionSuffix> </PropertyGroup>