Bazel依赖解析疑问:hhLib与iflib目标相关问题咨询
Bazel依赖目标常见问题解析
1. 关于//software/abc/def/ghi/startup:hhLib
Bazel不存在名为hhLib的默认目标,这类带明确名称的目标必须手动创建。找不到目标的常见原因:
- 目标定义在
startup目录下的其他BUILD变种文件中(比如BUILD.bazel) - 依赖路径有误,实际目标位于
startup的子目录而非根目录 - 目标是通过
alias规则定义的别名,需要查找alias(name = "hhLib", ...)的定义,它可能指向其他目录的真实目标 - 目标被意外删除或还未完成定义
2. 关于*:iflib
*是Bazel的包通配符,代表当前依赖所在的包(即写这条依赖的BUILD文件对应的目录)*:iflib和:iflib完全等价,都指向当前包中名为iflib的目标- 这种写法多用于明确标注目标属于当前包,避免歧义,但并非强制
iflib同样不是Bazel默认目标,需要在当前包的BUILD文件中手动定义对应的规则(比如cc_library、java_library等)
内容的提问来源于stack exchange,提问作者ANjaNA
相关产品推荐
相关产品推荐

