构建由多个程序集组成的CoreCLR/DNX项目的最佳实践是什么?
每个程序集是否都有一个project.json,并且每个程序集都需要使用自定义脚本手动构建,或者现有的构建工具是否可以遍历这些依赖项并自行构建所有程序集?
有这样的项目的例子吗?
通常,每个程序集==一个NuGet包==一一个project.json.
具有多个程序集的解决方案的一个很好的例子是Mvc。
ASP.NET团队使用KoreBuild,一个内部的(但公共的)来协调构建。其思想是在项目上调用dotnet/dnu
构建/打包/发布。KoreBuild查找src
、test
和samples
下的项目。
使用dnu
和dotnet
可以很容易地构建整个项目图:
dnu
支持globbing模式,因此您可以执行类似dnu build src/**
的操作,它将计算出该文件夹中的图形dotnet
已经知道以前编译了什么,所以您不需要在意。只要在每个项目上调用dotnet build
,它就会在必要时重新构建它的依赖关系