Maven 如何使用Bazel下载依赖项?

Maven 如何使用Bazel下载依赖项?,maven,build,bazel,Maven,Build,Bazel,我是巴泽尔的新手。我需要使用Bazel下载外部依赖jar文件。在何处配置以下载外部jar文件。我试图在构建文件和工作区文件中添加jar文件,但不起作用 工作区文件 maven_server(name="myserver",url="https://mvnrepository.com/artifact/org.apache.flink/flink-java") maven_jar(name="flink-java",artifact="org.apache.flink:filnk-java:jar

我是巴泽尔的新手。我需要使用Bazel下载外部依赖jar文件。在何处配置以下载外部jar文件。我试图在构建文件和工作区文件中添加jar文件,但不起作用

工作区文件

maven_server(name="myserver",url="https://mvnrepository.com/artifact/org.apache.flink/flink-java")
maven_jar(name="flink-java",artifact="org.apache.flink:filnk-java:jar:1.2.0",server="myserver")
bind(name="flink-java",actual="@flink-java//jar")
java_binary(
name="read_files",
srcs = glob(["ReadFiles.java"]),
main_class="com.ibm.cdo.gts.contracts.pipeline.preprocess.ReadFiles",
deps=["//external:flink-java"],
)
生成文件

maven_server(name="myserver",url="https://mvnrepository.com/artifact/org.apache.flink/flink-java")
maven_jar(name="flink-java",artifact="org.apache.flink:filnk-java:jar:1.2.0",server="myserver")
bind(name="flink-java",actual="@flink-java//jar")
java_binary(
name="read_files",
srcs = glob(["ReadFiles.java"]),
main_class="com.ibm.cdo.gts.contracts.pipeline.preprocess.ReadFiles",
deps=["//external:flink-java"],
)

您所犯的逻辑错误是工作区名称(
flinkjava
)是非法的,并且是非法的。所需的是将
-
中的
-
更改为
-
,当然还有
绑定中的引用

maven_jar(name="flink_java",artifact="org.apache.flink:flink-java:jar:1.2.0")
bind(name="flink-java",actual="@flink_java//jar")
您在上述内容中还有两个错误:

  • 当您需要flink java时,在您编写的工件坐标中
  • 您使用的mvnrepository URL似乎不合法。我尝试了一些变体,但无法使其工作。此外,从网站上,他们似乎将下载链接到Maven Central本身,所以我不确定他们是否为JAR提供服务器。话虽如此,由于Bazel退回到Maven Central,我只是省略了
    Maven_服务器
    ,构建就通过了。如果您需要有关
    maven_服务器
    部分的帮助,并且需要使用专用maven存储库,请先仔细检查URL

  • PS:如果你在你的问题中添加Bazel输出,那会很有帮助,因为我需要创建自己的工作区,以了解你遇到的问题。

    你的逻辑错误是工作区名称(
    flink java
    )是非法的,而且不合法。所需的是将
    -
    中的
    -
    更改为
    -
    ,当然还有
    绑定中的引用

    maven_jar(name="flink_java",artifact="org.apache.flink:flink-java:jar:1.2.0")
    bind(name="flink-java",actual="@flink_java//jar")
    
    您在上述内容中还有两个错误:

  • 当您需要flink java时,在您编写的工件坐标中
  • 您使用的mvnrepository URL似乎不合法。我尝试了一些变体,但无法使其工作。此外,从网站上,他们似乎将下载链接到Maven Central本身,所以我不确定他们是否为JAR提供服务器。话虽如此,由于Bazel退回到Maven Central,我只是省略了
    Maven_服务器
    ,构建就通过了。如果您需要有关
    maven_服务器
    部分的帮助,并且需要使用专用maven存储库,请先仔细检查URL

  • PS:如果您在问题中添加Bazel输出,那会非常有帮助,因为我需要创建自己的工作区来了解您遇到的问题。

    我的回答解决了您的问题吗?如果是这样的话,我希望你能将其标记为已接受。乔丹:在这里接受答案、投票或回复答案不是强制性的,但你在看到Ittai的消息后已经登录,所以以某种方式回复会很好。我的回答解决了你的问题吗?如果是这样的话,我希望你能将其标记为已接受。乔丹:在这里接受答案、投票或回复答案并不是强制性的,但你看到Ittai的消息后就已经登录了,所以以某种方式回复会很好。