【发布时间】:2021-09-12 12:52:31
【问题描述】:
所以我正在将一个多模块项目从 maven 迁移到 Bazel,我遇到了以下问题:
我的模块 A 在“src/test”下包含一些实用程序测试类,模块 B 使用它们。在 maven 中,我们使用 maven-jar-plugin 生成一个 test-jar,它作为依赖项包含在模块 B 中。但我不确定如何将其迁移到 Bazel。
到目前为止,我的 bazel 配置如下所示:
模块 B:
java_library(
name = "moduleB-lib",
srcs = glob(["src/main/java/**/*.java"]),
visibility = ["//visibility:public"],
deps = [
"//path/to/moduleA:lib"
],
)
java_library(
name = "test-dep",
srcs = glob(["**/src/test/java/**/*.java"]),
visibility = ["//visibility:public"],
deps = [
":moduleB-lib",
"@maven:junit-dependencies"
],
)
java_test(
name = "tests",
args = ["--select-package=org.test"],
main_class = "org.junit.platform.console.ConsoleLauncher",
use_testrunner = False,
visibility = ["//visibility:public"],
runtime_deps = [":test-dep"],
)
但这不起作用,因为模块 B 无法看到这些实用程序类
error: cannot find symbol
【问题讨论】: