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”],
)
非常感谢!