Bazel 如何为maven_aar规则指定maven存储库?

Bazel 如何为maven_aar规则指定maven存储库?,bazel,Bazel,如何为maven\u aar规则指定maven存储库?似乎maven\u aar无法识别我的maven\u服务器: maven_server( name = "default", url = "http://xxx" ) 多谢各位 它使用常规的maven构造,而不是maven_服务器。 从本期已发行的()开始: “…maven_服务器规则仅适用于本机maven_jar规则。我们对skylark maven_jar和mane_aar规则进行了不同的修改。相反,它使用标准的mave

如何为
maven\u aar
规则指定maven存储库?似乎
maven\u aar
无法识别我的
maven\u服务器

maven_server(
    name = "default",
    url = "http://xxx"
)

多谢各位

它使用常规的maven构造,而不是maven_服务器。 从本期已发行的()开始: “…maven_服务器规则仅适用于本机maven_jar规则。我们对skylark maven_jar和mane_aar规则进行了不同的修改。相反,它使用标准的maven设置XML约定


您可以将存储库放在计算机上的全局maven设置文件中,也可以创建一个custom settings.xml并将其路径放在maven_aar的“settings”属性中。”在
@bazel_tools//tools/build_defs/repo:maven_rules.bzl
从maven安装设置文件
${maven.home}/conf/settings.xml
和用户安装设置文件
${user.home}读取maven设置/.m2/settings.xml
或从
maven\u aar
规则的
settings
属性中指定的路径

要为项目指定存储库,您可能需要编写一个Maven settings.xml文件并将其签入存储库

例如,要使用使用使用JCenter作为中央存储库的Maven配置文件设置依赖于Volley的
android_binary

$ cat WORKSPACE
load("@bazel_tools//tools/build_defs/repo:maven_rules.bzl", "maven_aar")
maven_aar(
    name = "volley",
    artifact = "com.android.volley:volley:1.0.0",
    settings = "//:settings.xml",
)

$ cat settings.xml
<?xml version='1.0' encoding='UTF-8'?>
<settings
    xsi:schemaLocation='http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd'
    xmlns='http://maven.apache.org/SETTINGS/1.0.0'
    xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
  <profiles>
    <profile>
      <repositories>
        <repository>
          <id>central</id>
          <name>bintray</name>
          <url>http://jcenter.bintray.com</url>
        </repository>
      </repositories>
      <id>bintray</id>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>bintray</activeProfile>
  </activeProfiles>
</settings>

$ cat BUILD
android_binary(
    name = "app",
    srcs = glob(["*.java"]),
    manifest = "AndroidManifest.xml",
    custom_package = "com.example.app",
    deps = ["@volley//aar"],
)
$cat工作区
加载(“@bazel\u tools//tools/build\u defs/repo:maven\u rules.bzl”、“maven\u aar”)
马文努阿(
name=“截击”,
artifact=“com.android.volley:volley:1.0.0”,
settings=“/:settings.xml”,
)
$cat settings.xml
中心的
垃圾箱
http://jcenter.bintray.com
垃圾箱
垃圾箱
$cat构建
android_二进制(
name=“app”,
srcs=glob([“*.java]”),
manifest=“AndroidManifest.xml”,
自定义_package=“com.example.app”,
deps=[“@volley//aar”],
)

非常感谢!