以下是使用Artifactory配置的顶级build.gradle
示例:
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath "org.jfrog.buildinfo:build-info-extractor-gradle:x.x.x"
classpath 'com.android.tools.build:gradle:x.x.x'
}
}
allprojects {
apply plugin: 'com.jfrog.artifactory'
}
artifactory {
contextUrl = "${artifactory_contextUrl}"
//... standard artifactory plugin auto-generated from web interface
}
我希望com.android.tools.build:gradle:x.x.x
来自Artifactory遥控器,而不是来自jcenter
或Google Maven资源库,因为它们被敌对的工作场所代理阻止。
但是,似乎artifactory
Gradle插件仅在应用buildscript
闭包后才可用。如何从Artifactory获取其他buildscript
依赖项?
答案 0 :(得分:3)
您可以创建简单的Maven远程存储库来提供buildscript
依赖项。由于这些远程存储库只是镜像公共存储库,因此您可以匿名访问。这意味着在执行buildscript
闭包时,无需配置artifactory_user
和artifactory_contextUrl
。
示例build.gradle
看起来像这样:
buildscript {
repositories {
maven {
url "http:///example.com:8082/artifactory/list/jcenter/"
}
maven {
url "http://example.com:8082/artifactory/list/google-remote/"
}
}
dependencies {
classpath "org.jfrog.buildinfo:build-info-extractor-gradle:x.x.x"
classpath 'com.android.tools.build:gradle:x.x.x'
}
}
其中google-remote
是镜像您自己配置的Google Maven存储库的远程存储库的名称(存储库密钥)。
至于为Google Maven Repository本身配置Artifactory遥控器,地址只是maven.google.com
,如下图所示: