Bob*_*Bob 11 gradle build.gradle android-gradle-plugin
我的顶级水平有这样的东西build.gradle(Gradle 2.2)
ext.repo = "https://my-artifactory-repo"
buildscript {
repositories {
maven {
credentials {
username foo
password bar
}
url repo //doesn't work
}
}
dependencies {
classpath 'com.android.tools.build:gradle:0.14.1'
}
}
allprojects {
repositories {
maven {
credentials {
username foo
password bar
}
url repo //works
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是错误
Could not find property 'repo' on org.gradle.api.internal.artifacts.repositories.DefaultMavenArtifactRepository_Decorated@718afa64.
Run Code Online (Sandbox Code Playgroud)
所以它适用allprojects但不是buildscript.
您可以定义为变量额外的属性同ext在buildscript {...}.然后,此变量也可在以下范围内访问allprojects {...}:
buildscript {
ext {
repo = "https://my-artifactory-repo"
}
repositories {
maven {
url repo // works
}
}
}
allprojects {
repositories {
maven {
url repo // works
}
}
}
Run Code Online (Sandbox Code Playgroud)
发生这种情况是因为buildscript {...}始终首先评估配置闭包,因此尚未定义属性.解决方法是在构建脚本之外定义属性,方法是将其放在gradle.properties文件中或通过命令行.
| 归档时间: |
|
| 查看次数: |
2783 次 |
| 最近记录: |