gpt4 book ai didi

dependencies - Nuget pack 如何通过命令行设置/更改依赖版本

转载 作者:行者123 更新时间:2023-12-04 00:11:35 24 4
gpt4 key购买 nike

如何在nuget pack期间动态更改nuspec文件中的依赖版本的问题

<?xml version="1.0"?>
<package >
<metadata>
<id>MyPacked.Name</id>
<version>1.1.1</version>
<authors>Pawel Cioch</authors>
<owners>Pawel Cioch</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Some Cool package</description>
<releaseNotes>Initial Release</releaseNotes>
<copyright>Copyright 2015</copyright>
<tags>replace dependency version</tags>
<dependencies>
<dependency id="dep1" version="I want version here to be same as package version" />
<dependency id="dep2" version="2.1.3" />
</dependencies>
</metadata>
</package>

请不要问“你为什么需要它”

如果问题不明确,我也很抱歉,但由于我通过尝试/失败解决了它,现在一切似乎都很明显,所以“我不知道怎么问”

最佳答案

<version>只需使用 -Version 开关即可更改标签:

nuget pack -Version 2.0.0

您还可以使用 Replacement Tokens .我们可以做的是像这样使用自定义 token /标签:

    ...
<version>$myVersion$</version>
...
<dependencies>
<dependency id="dep1" version="$myVersion$" />

现在要替换此标记,-Version 开关不会执行。我们必须改用 -Properties 开关:

nuget pack -Prop myVersion=3.0.0

这是一个高级命令的更多示例:

nuget pack My.ProjName\My.ProjName.csproj -Build -Prop Configuration=Release;myVersion=3.0.0 -OutputDirectory SomeDirHere

为了更好地使用 powershell(例如),如果对多个属性使用分号,则必须将 -Prop 值用双引号引起来

$userVersion = Read-Host 'Enter a valid version you want to use'
nuget pack .\My.ProjName\My.ProjName.csproj -Build -Prop "Configuration=Release;myVersion=$userVersion" -OutputDirectory SomeDirHere

注意:使用 Nuget 的预定义 $version$ token 可以工作,但在那种情况下版本将从 AssemblyInfo.cs 获得,而上面的想法是通过命令行显式设置版本。

我希望有人会发现它有用且节省时间。

关于dependencies - Nuget pack 如何通过命令行设置/更改依赖版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34442421/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com