I have the impression, that in the .NET-world, there is no real need for a Maven-like tool.

I am aware that there is Byldan and NMaven (is it still alive?), but I have not yet seen a real-world project that uses them.

Also in most .NET projects I have worked on, there never was voiced an need for a Maven-like tool. The problems Maven maven is addressing (automatic dependency-resolution, conventions based build structure ...) seem not to be so important in .NET.

Is my perception correct?

Why is this the case?

What are people really using in .NET? No automatic dependency resolution at all?

Are they writing their own build tools?

Is anybody using Maven itself, to manage their .NET projects? Is this a good choice?

What are your experiences?

推荐答案

For artifact dependency resolving, I'd say Nuget is now the preferred alternative. It supports and promotes build time resolution, i.e. no need to check in binary dependency artifacts into vcs. See these articles.

From version 2.7 of Nuget, build time resolution has even better support with the command Nuget restore being one of the options.

Update: There is now an alternative, nuget compatible package manager available - Paket that is better than the vanilla nuget client at handling transient dependencies and harmonising dependencies between projects in the same solution. The tooling seems to be pretty mature as well (VS integration and command line tooling for CI)

.net相关问答推荐

EF核心类似功能T-SQL UPDATE FROM

Azure Function应用程序-如何升级.NET运行时

使用React路由加载器获取数据不能正常工作

为什么 PropertyInfo.SetValue 在此示例中不起作用以及如何使其起作用?

为什么脚本不从 _Layout 加载并且必须添加到部分视图中?

cmd 冻结中的 dotnet 命令.怎么了?

使用 Powershell TOM 在 SSAS 表格中创建分区

如果只有一个 : 存在于字符串中,则提取冒号后的内容

IIS 发布 ASP.NET Core 应用程序而不关闭 IIS 网站

C# 中的批量更新

如何在没有抽象基类的情况下强制覆盖后代中的方法?

.Include() 与 .Load() 在 EntityFramework 中的性能

获取类型的默认构造函数的最有效方法

如何判断对象是否是某种类型的数组?

公钥令牌的作用是什么?

如何制作通用类型转换函数

互锁且易变

文件按文件名模式存在

我可以将构造函数参数传递给 Unity 的 Resolve() 方法吗?

在 try/catch/finally 中等待的一个很好的解决方案?