一个指向http://repo.maven.apache.org/maven2,另一个指向私人神器?
maven_server(
name = "default",
url = "http://repo.maven.apache.org/maven2",
)
maven_server(
name = "default",
url = "<some private maven repo>",
)
基本上,我想要做的是在我的本地机器上进行开发时使用http://repo.maven.apache.org/maven2作为默认值,并在我的机器外部进行prod构建时切换到另一个maven_server(例如http://intranet.mycorp.net)。
答案 0 :(得分:0)
您是否看过maven_jar
的Skylark实施?它可以在@bazel_tools
中找到。
您可以将此行添加到WORKSPACE
load("@bazel_tools//tools/build_defs/repo:maven_rules.bzl", "maven_jar")`
此实现允许您使用settings.xml
属性来使用自定义maven_jar.settings
,因为它直接调用mvn
。请注意,server
属性已从此实现中删除,因为服务器设置已在settings.xml
中指定。例如,
maven_jar(
name = "foo",
artifact = "foo:foo:1.0",
settings = "//:private_settings.xml",
)
maven_jar(
name = "bar",
artifact = "bar:bar:1.0",
settings = "//:other_settings.xml",
)