Moh*_*ANE 152 android build gradle circleci android-studio
我将gradle插件更新为最新版本:com.android.tools.build:gradle:3.0.0-alpha1 发生此错误:
export TERM="dumb"
if [ -e ./gradlew ]; then ./gradlew test;else gradle test;fi
FAILURE: Build failed with an exception.
What went wrong:
A problem occurred configuring root project 'Android-app'. Could not
resolve all dependencies for configuration ':classpath'. Could not
find com.android.tools.build:gradle:3.0.0-alpha1. Searched in the
following locations:
https://jcenter.bintray.com/com/android/tools/build/gradle/3.0.0-alpha1/gradle-3.0.0-alpha1.pom
https://jcenter.bintray.com/com/android/tools/build/gradle/3.0.0-alpha1/gradle-3.0.0-alpha1.jar
Required by:
Run Code Online (Sandbox Code Playgroud)
当前的circle.yml
dependencies:
pre:
- mkdir -p $ANDROID_HOME"/licenses"
- echo $ANDROID_SDK_LICENSE > $ANDROID_HOME"/licenses/android-sdk-license"
- source environmentSetup.sh && get_android_sdk_25
cache_directories:
- /usr/local/android-sdk-linux
- ~/.android
- ~/.gradle
override:
- ./gradlew dependencies || true
test:
post:
- mkdir -p $CIRCLE_TEST_REPORTS/junit/
- find . -type f -regex ".*/target/surefire-reports/.*xml" -exec cp {} $CIRCLE_TEST_REPORTS/junit/ \;
machine:
java:
version: oraclejdk8
Run Code Online (Sandbox Code Playgroud)
编辑:我的gradle文件:
buildscript {
repositories {
jcenter()
maven {
url 'https://maven.google.com'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-alpha1'
classpath 'com.google.gms:google-services:3.0.0'
classpath "io.realm:realm-gradle-plugin:3.1.3"
}
}
allprojects {
repositories {
mavenCentral()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)
mtr*_*kal 330
谷歌有新的maven回购,所以可能是原因.
https://android-developers.googleblog.com/2017/10/android-studio-30.html >部分Google的Maven资源库
https://developer.android.com/studio/preview/features/new-android-plugin-migration.html https://developer.android.com/studio/build/dependencies.html#google-maven
所以也许(未经测试)添加对maven repo的依赖:
buildscript {
repositories {
...
// You need to add the following repository to download the
// new plugin.
google() // new which replace https://maven.google.com
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.0' //Minimum supported Gradle version is 4.6.
}
}
Run Code Online (Sandbox Code Playgroud)
tir*_*r38 96
对于东西通过命令行编译我需要包括在BOTH行家回购buildscript和allprojects.
根build.gradle:
buildscript {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-alpha2'
...
}
}
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
}
Run Code Online (Sandbox Code Playgroud)
在buildscript块中需要找到AGP,并在allprojects块中查找android.arch和com.android.databinding打包(和其他)
更新:看起来刚刚调用了新的repo,google()但我仍然需要在两个地方声明它.
Gen*_*Jam 31
要在此处和其他地方同步所有答案:
Run Code Online (Sandbox Code Playgroud)buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.0' } }
使build.gradle中的buildscript看起来像这样.它在google和jcenter之间找到所有这些.在此答案中,只有其中一个不会找到所有依赖项.
NOT*_*iFY 14
mtrakal的解决方案运行良好.
添加到gradle.build:
buildscript {
repositories {
maven { url 'https://maven.google.com' }
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-alpha2'
// NOTE: Do not place your application dependencies here;
// they belong in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
Run Code Online (Sandbox Code Playgroud)
然后它会自动升级到alpha2.
使缓存无效并重新启动一切都很好.
档案| 使高速缓存/重新启动无效
选择'无效并重新启动'
小智 7
我这样做了:
点击SDk Manager:
更改Canary Channel的更新,检查并更新它...
进入build.gradle并将编译版本更改为26.0.0-beta2:
进入gradle/build.gradle并更改依赖关系classpath'com.android.tools.build:gradle:3.0.0-alpha7':
同步项目后...对我有用!我希望我帮助... tks!
确保在顶级build.gradle中添加以下行,并且应该修复它.
maven { url 'https://maven.google.com' }
Run Code Online (Sandbox Code Playgroud)
我上面提到了完全相同的错误,一旦我添加了这个条目一切正常.
| 归档时间: |
|
| 查看次数: |
156752 次 |
| 最近记录: |