我的担忧是将继承(以及多重继承)的复杂性引入到本应简单的配置中。多年Java经验中,我学到的关键的一点是避免这些方法,使用组合,这提供了更大的灵活性。
使用 tools.build 作为解决 mono-repos 中此问题的更简单的方法是否可行?
在原始问题中提出的示例中,是否会有机制来防范或至少警告 :dev/project1
包含 :dev/all-projects
或另一个分组别名的情况?这种分组可以深入到多少层次?
是否有明确定义的优先级规则?
是否有工具可以诊断冲突的来源——也许 -Stree 已经足够了,但我并不确定
别名分组是否仅限于在项目的 deps.edn 中定义的别名,还是也会包括用户级别的 deps.edn(我假设排除用户级配置会添加更多的复杂性)
或许一种避免这种情况的方法是类似于 :meta-aliases
的东西,它只能包含别名,而不能包含其他 :meta-aliases
,但那样似乎还是在增加复杂性。
我希望可以通过不增加 deps.edn
配置的复杂性(特别是在避免继承或甚至多重继承的情况下)来解决特定于 mono-repls 的问题。