标签: bazel-aspect

获取 bazel 目标的依赖关系树

我正在尝试将我的maven集成测试迁移到bazel. 在运行时我面临一些问题。为了调试,我想maven dependency:tree与 bazel 的依赖树进行比较。以避免任何额外的依赖项或检测我是否缺少某些依赖项。

我们如何比较这些依赖关系(mavenvs bazel)。有没有办法获取 bazel 目标的依赖树?

maven bazel bazel-aspect

9
推荐指数
1
解决办法
9647
查看次数

Bazel-如何获取目标的所有传递源

我需要编写一个规则来*.foo压缩可执行文件的所有可传递配置文件 ( )(可以是自定义规则、java_binary 和 docker container_image)。
该配置文件可以在出现srcs可执行文件的任何属性的属性(tarsdepsruntime_deps等)

这听起来应该很容易通过附加到我的规则的方面来实现,但我在各种示例之间迷失了方向。

bazel bazel-aspect

5
推荐指数
1
解决办法
591
查看次数

如何使用方面检索 Bazel 工作区规则的属性

我正在编写一个构建后工具,用于在 bazel 构建后合成 Maven pom 文件。我正在使用方面来收集有关各个目标的相关信息。

其中一项功能涉及向相关 pom 文件添加外部jar 依赖项。

假设我们的工作区包含以下目标:

maven_jar(
 name = "com_google_guava_guava",
 artifact = "com.google.guava:guava:19.0",
)
Run Code Online (Sandbox Code Playgroud)

我们的BUILD文件之一包含一个以guava作为依赖项的目标

scala_library(

name = "somename",
srcs = glob(["*.scala"]) + glob(["*.java"]),
deps = [
    "@com_google_guava_guava//jar:file" , 
],
Run Code Online (Sandbox Code Playgroud)

在这个目标的一方面,如何检索maven_jar的属性,特别是artifact

(我能得到的最接近的是:

[InputFileConfiguredTarget(@com_google_guava_guava//jar:guava-19.0.jar)]
Run Code Online (Sandbox Code Playgroud)

使用ctx.rule.attr.srcs

我可能可以只解析工作区外部 jar目标并获取从名称到工件的映射作为混合解决方案,

但更优雅的解决方案是让方面自行提供工件。是否可以?

bazel bazel-aspect

5
推荐指数
1
解决办法
755
查看次数

标签 统计

bazel ×3

bazel-aspect ×3

maven ×1