1

我希望 bazel 从 URL 获取外部依赖项。该文件是一个 rpm 文件。我在根目录的 WORKSPACE 文件中添加了这个:

http_archive(
    name = "mylib",
    url = "someURL/somefile.rpm",
    build_file = "example.BUILD"
)

当我尝试:

bazel fetch @mylib//...

它说:

"com.google.devtools.build.lib.syntax.EvalException: Expected a file with a .zip, .jar, .war, .tar, .tar.gz, .tgz, .tar.xz, .txz, or .tar.bz2 suffix"

基本上它不允许下载 rpm deps。我怎样才能做到这一点?如何下载 rpm 类型的外部依赖项。

4

2 回答 2

0

你现在肯定想通了。就像@sebastian-nowak 评论的那样,您可以执行以下操作:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file")

http_file(
    name = "mylib",
    url = "someURL/somefile.rpm"
)

并在您的 中example.BUILD,将其引用为@mylib//file

(来源:https ://docs.bazel.build/versions/master/repo/http.html#http_file )

于 2020-05-13T13:03:01.717 回答
0

您正在尝试获取.rpm文件,但似乎 bazel 只接受带有 suffixes 的存档文件.zip, .jar, .war, .tar, .tar.gz, .tgz, .tar.xz, .txz, or .tar.bz2

于 2019-05-09T16:59:47.010 回答