Visual Studio生成Nuget包时版本号未更新的问题如何解决
Nuget包版本修改后仍生成旧版本包的排查步骤
- 执行清理重建操作:右键项目选择
清理,完成后再执行重新生成,普通增量构建不会触发打包逻辑的重新执行,会直接沿用历史生成的nupkg文件。 - 校验项目配置文件:右键项目选择
编辑项目文件,搜索<PackageVersion>、<Version>节点,确认UI修改的版本号是否已经正确写入配置,是否存在多环境分支下硬编码的旧版本号未同步修改。 - 排查全局版本覆盖配置:检查项目根目录、解决方案根目录下是否存在
Directory.Build.props、Directory.Build.targets全局配置文件,这类文件中如果定义了<PackageVersion>属性,优先级高于单个项目的属性配置,会强制覆盖设置的版本号。 - 清空残留构建文件:手动删除项目下的
bin、obj文件夹,旧版本nupkg文件如果被占用无法覆盖时,构建会直接沿用旧文件并输出旧版本路径。 - 确认打包触发配置:检查项目属性
Package分类下的在构建时生成Nuget包选项是否已开启,未开启的情况下普通构建不会触发打包流程,需要右键项目手动选择打包才会生成新的版本包。 - 命令行打包校验:打开项目所在目录,执行
dotnet pack -p:PackageVersion=1.0.2,如果命令行生成的包版本正确,说明是Visual Studio本地缓存异常,可以重置VS用户配置后再尝试。
内容的提问来源于stack exchange,提问作者Haukland
相关产品推荐
相关产品推荐

