如何使用Bazel直接在BUILD文件的依赖项部分中指定groupid,工件和版本?

时间:2017-10-18 11:34:31

标签: bazel

如何使用Bazel直接在BUILD文件的依赖项部分指定groupid,工件和版本?

我正在尝试将简单的gradle项目转换为bazel项目。由于我有一个gradle项目(不是maven),所以无法真正使用generate_workspace

我想知道是否有更简单的方法在BUILD文件中的依赖项本身中指定GAV,所以它看起来像这样

java_binary(
    name = "HelloWorld",
    srcs = glob(["src/main/java/**/*.java"]),
    resources = glob(["src/main/resources/**"]),
    deps = ["com.fasterxml.jackson.core:jackson-core:2.8.8"],
    main_class = "com.hello.sample.Foo"
)

1 个答案:

答案 0 :(得分:1)

您是否尝试过直接使用maven_jar()

在WORKSPACE中:

maven_jar(
    name = "com_google_guava_guava",
    artifact = "com.google.guava:guava:18.0",
    sha1 = "cce0823396aa693798f8882e64213b1772032b09",
)

在BUILD中:

java_binary(
    name = "HelloWorld",
    srcs = glob(["src/main/java/**/*.java"]),
    resources = glob(["src/main/resources/**"]),
    deps = ["@com_google_guava_guava//jar"],
    main_class = "com.hello.sample.Foo"
)

请参阅https://docs.bazel.build/versions/master/be/workspace.html#maven_jar