.NET 9 使用新的 Directory.Packages.props 模板

.NET 9 使用新的 Directory.Packages.props 模板

Intro

之前写过一篇使用中心化的包版本管理特性,没看过的朋友可以移步 NuGet 新特性 -- 中心化的 NuGet 包版本管理

但是使用起来需要自己手动创建/编辑  Directory.Packages.props 文件,有些麻烦,于是想创建一个 Directory.Packages.props 的模板,于是提了一个 issue,后面又尝试提了一个 PR,最近发现之前贡献的 Directory.Packages.props 模板已经可以在 .NET 9 Preview 1 使用了~

在一个新项目想要使用中心化包版本管理时,可以使用这个模板来创建 Directory.Packages.props 来启用中心化的包版本管理功能

How to use

新的模板名称目前是 packagesprops 类似于 buildprops

dotnet new list 可以查看本地的模板列表

cf60198091a0a76e06b9e3d1ca25d8ee.png

执行 dotnet new packagesprops -h 可以看到使用的一些参数

9f960f9bf621f3a4ed814fe76bbdddf8.png

有一个 --inherit 的参数,但是就我看到过的项目而言,没有需要用到这个参数的,主要是类似于 Directory.Build.props 一样,可以继承上一级的定义

使用示例如下:

新建一个控制台测试应用,之后在项目根目录通过 dotnet new packagesprops 来创建 Directory.Packages.props

f92b6ef9699ce1afe15b0b1bbed197bf.png

然后我们添加一个 nuget package 的引用来测试一下,执行 dotnet add package WeihanLi.Common 来添加一个包引用

fcea8ffa33354fe501e8276758932202.png

add package output

从输出结果中我们可以看到有 central package management  的字样,我们再来看下这个文件和项目文件来验证一下

c2154b87bc43f00554107207b982603f.png

packages.props and project file

从上面的输出结果可以看出是符合预期的,项目文件中只包含包引用,不包含版本信息,版本定义在了 Directory.Packages.props 文件中

More

如果你也打算为新项目开启中心化的版本管理,不妨来试试吧

References

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值