0

我正在使用 Bazel 编译 scala。

现在,我的 scala_test 看起来像

scala_test {
    name = "sample",
    srcs = [
            "a.scala",
            "b.scala",
            "c.scala",
            "d.scala",
    ],
    deps = [
            "//src//main/scala/.../dep1",
            "//src//main/scala/.../dep2",
            "//src//main/scala/.../dep3",
            "//src//main/scala/.../dep4",
    ]
}

在这种情况下,Bazel 不支持对这些 src 进行并行化,因为它们被分组为 one scala_test。为了启用自动并行测试,我想将 srcs 分成不同的scala_test类似

scala_test {
    name = "sample1",
    srcs = [
            "a.scala",
    ],
    deps = [
            "//src//main/scala/.../dep1",
            "//src//main/scala/.../dep2",
            "//src//main/scala/.../dep3",
            "//src//main/scala/.../dep4",
    ]
}
scala_test {
    name = "sample2",
    srcs = [
            "b.scala",
    ],
    deps = [
            "//src//main/scala/.../dep1",
            "//src//main/scala/.../dep2",
            "//src//main/scala/.../dep3",
            "//src//main/scala/.../dep4",
    ]
}
...

问题是我猜 bazel 会尝试为每个scala_test. 有没有办法对依赖项进行分组并在不同的scala_test块中重用它们,例如scala_library

4

1 回答 1

0

抱歉,我认为 Bazel 缓存了依赖项,因此我不必担心在运行所有测试时再次编译它们。

于 2021-08-07T11:48:37.900 回答