Итак, после более подробного изучения того, как работает Базель, я, наконец, выяснил проблему и добавлю ее здесь на случай, если кто-нибудь натолкнется на эту же проблему в будущем.
Основная проблема - это транзитивные зависимости, которые maven_jar не разрешает по умолчанию. Вместо этого, bazel предоставляет полезное правило репозитория transitive_maven_jar , которое можно использовать для разрешения всех транзитивных зависимостей. Также возникла проблема с объявленной фактической зависимостью.
В моем случае я объявил selenium-java зависимостью, однако я использовал импорт только из одной из его транзитивных зависимостей (selenium-api). Из-за этого, selenium-java фактически не компилировался, так как фактически не использовался. Как только я объявил selenium-api своей зависимостью, проблема была решена.
Окончательное РАБОЧЕЕ МЕСТО:
http_archive(
name = "trans_maven_jar",
url = "https://github.com/bazelbuild/migration-tooling/archive/master.zip",
type = "zip",
strip_prefix = "migration-tooling-master",
)
load("@trans_maven_jar//transitive_maven_jar:transitive_maven_jar.bzl", "transitive_maven_jar")
transitive_maven_jar(
name = "dependencies",
artifacts = [
"org.seleniumhq.selenium:selenium-java:3.11.0",
]
)
load("@dependencies//:generate_workspace.bzl", "generated_maven_jars")
generated_maven_jars()
Final BUILD:
package(default_visibility = ["//visibility:public"])
java_library(
name = "core",
srcs = glob(
["main/core/**/*.java"]
),
resources = glob(["test/resources/*"]),
deps = [
"@org_seleniumhq_selenium_selenium_api//jar"
]
)
Обратите внимание, что я до сих пор не до конца понял, как работает Базель, поэтому часть того, что я сказал, может быть не совсем правильной, в таком случае, пожалуйста, дайте мне знать, но это то, что мне помогло.