rules_jvm_external icon indicating copy to clipboard operation
rules_jvm_external copied to clipboard

tests jar not supported

Open jdai8 opened this issue 1 year ago • 2 comments

maven_install(
    artifacts = [
        "org.apache.hadoop:hadoop-minicluster:2.2.0",
    ],
    repositories = [
        "https://repo1.maven.org/maven2",
    ],
    maven_install_json = "//:maven_install.json",
    version_conflict_policy = "pinned",
)

bazel build @maven//:org_apache_hadoop_hadoop_minicluster fails with:

ERROR: /private/var/tmp/_bazel_jack_dai/6c48c0a3eb95289be6da2989b1545c64/external/maven/BUILD:1655:11: in deps attribute of jvm_import rule @@maven//:org_apache_hadoop_hadoop_minicluster: rule '@@maven//:org_apache_hadoop_hadoop_yarn_server_tests' does not exist
ERROR: /private/var/tmp/_bazel_jack_dai/6c48c0a3eb95289be6da2989b1545c64/external/maven/BUILD:1655:11: Analysis of target '@@maven//:org_apache_hadoop_hadoop_minicluster' failed
ERROR: Analysis of target '@@maven//:org_apache_hadoop_hadoop_minicluster' failed; build aborted

bazel query @maven//:all prints out

...
@maven//:org_apache_hadoop_hadoop_yarn_server_tests_test_jar_tests_2_2_0_extension
@maven//:org_apache_hadoop_hadoop_yarn_server_tests_tests
@maven//:org_apache_hadoop_hadoop_yarn_server_tests_tests_2_2_0
...

But it looks like the deps are looking for org_apache_hadoop_hadoop_yarn_server_tests (with one tests).

https://repo1.maven.org/maven2/org/apache/hadoop/hadoop-yarn-server-tests/2.2.0/

Maybe related to https://github.com/bazelbuild/rules_jvm_external/issues/488?

jdai8 avatar Mar 27 '24 23:03 jdai8

Btw, in the maven_install file for hadoop mini cluster I see:

"coord": "org.apache.hadoop:hadoop-yarn-server-tests:test-jar:tests:2.2.0",

thomasbao12 avatar Apr 24 '24 18:04 thomasbao12

It looks like we can workaround with:

    override_targets = {
        "org.apache.hadoop:hadoop-yarn-server-tests": "@maven//:org_apache_hadoop_hadoop_yarn_server_tests_tests"
    },

jdai8 avatar Apr 25 '24 19:04 jdai8