EN
← 错误索引

F_SYSTEM_AMBIGUOUS_OPTION_SCOPE

选项作用域不明确

一个共享 Command path 同时属于多个带 Module options 的 feature,无法确定应使用哪一组规则。

更新于

这个错误是什么

多个 Command class 可以共享 path 前缀,但每个命令节点只能有一组确定的 feature option 作用域。当一个只有分支、没有可执行 endpoint 的共享节点来自多个 owner Module,且这些 Module 中至少一个声明了 optionsfunc 无法决定在该节点上公开哪组 option。

details.path 是发生歧义的共享路径,details.modules 列出参与该节点的 owner Modules。

如何修复

把共享 path 的 Commands 放到同一个 feature Module;或把需要共同生效的 option 移到根模块。若这些分支本来就不应共享作用域,也可以调整 Command path,使每个 feature 在产生歧义前拥有独立前缀。