标签: android-gradle-plugin

错误:与依赖项'com.google.code.findbugs:jsr305'冲突

我在Android Studio 2.2 Preview 1中使用Android App和Backend模块在Google Messaging中创建了一个新项目.这是应用程序文件:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"
    defaultConfig {
        applicationId "com.xxx.xxx"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.4.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha1'
    compile 'com.google.android.gms:play-services-gcm:9.0.0'
    testCompile 'junit:junit:4.12'
    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'
    androidTestCompile 'com.android.support.test:runner:0.5'
    androidTestCompile 'com.android.support:support-annotations:23.4.0'
    compile project(path: ':backend', configuration: 'android-endpoints')
}
Run Code Online (Sandbox Code Playgroud)

但它给了:

错误:与依赖项'com.google.code.findbugs:jsr305'冲突.app(1.3.9)和测试app(2.0.1)的已解决版本有所不同.有关详细信息,请参阅http://g.co/androidstudio/app-test-app-conflict.

我是Android的新手,无法找到这个错误.我如何解决它?

gradle google-cloud-messaging android-studio build.gradle android-gradle-plugin

238
推荐指数
7
解决办法
10万
查看次数

Android buildscript存储库:jcenter VS mavencentral

我最后一次使用Android Studio时,它生成了.gradle带有mavencentral()buildscript存储库的文件,而现在已经存在了jcenter().

任何人都可以解释与此相关的问题.还有其他的回购吗?什么时候应该切换它们?它们对项目,模块,库有什么影响?Android开发人员的其他任何必需品?

谁负责维护这些回购?

java android maven-central android-gradle-plugin jcenter

232
推荐指数
4
解决办法
6万
查看次数

清单合并失败:使用-sdk:minSdkVersion 14

由于下载最新的SDK并安装Android Studio,我的项目无法构建.我收到以下消息:

Error:Gradle: Execution failed for task ':SampleProject:processProdDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version L declared in library com.android.support:support-v4:21.0.0-rc1
Run Code Online (Sandbox Code Playgroud)

android android-studio android-gradle-plugin android-5.0-lollipop

230
推荐指数
12
解决办法
17万
查看次数

如何在Android studio中导入现有项目时设置gradle home

如何在Android studio中导入现有项目时设置gradle home.在尝试导入时,我需要设置此路径.在此输入图像描述

intellij-idea gradle android-studio android-gradle-plugin

229
推荐指数
9
解决办法
34万
查看次数

找不到与给定名称匹配的资源:attr'android:keyboardNavigationCluster'.更新到支持库26.0.0时

我在更新到最新的支持库版本26.0.0时遇到此问题(https://developer.android.com/topic/libraries/support-library/revisions.html#26-0-0):

错误:(18,21)找不到与给定名称匹配的资源:attr'android:keyboardNavigationCluster'.

/.../app/build/intermediates/res/merged/beta/debug/values-v26/values-v26.xml
Error:(15, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:(18, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:(15, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:(18, 21) No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Error:Execution failed for task ':app:processBetaDebugResources'.
Run Code Online (Sandbox Code Playgroud)

com.android.ide.common.process.ProcessException:无法执行aapt

该文件来自支持库:

<style name="Base.V26.Widget.AppCompat.Toolbar" parent="Base.V7.Widget.AppCompat.Toolbar">
    <item name="android:touchscreenBlocksFocus">true</item>
    <item name="android:keyboardNavigationCluster">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)

我们使用以下版本:

ext.COMPILE_SDK_VERSION = 26
ext.BUILD_TOOLS_VERSION = "26.0.1"

ext.MIN_SDK_VERSION = 17
ext.TARGET_SDK_VERSION = …
Run Code Online (Sandbox Code Playgroud)

android android-appcompat android-support-library android-gradle-plugin

213
推荐指数
10
解决办法
14万
查看次数

多个dex文件定义了Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat

如果我从命令行运行gradle assembleDebug,我突然收到此错误:

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.util.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
    at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:592)
    at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:550)
    at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:531)
    at com.android.dx.merge.DexMerger.mergeDexBuffers(DexMerger.java:168)
    at com.android.dx.merge.DexMerger.merge(DexMerger.java:186)
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:300)
    at com.android.dx.command.dexer.Main.run(Main.java:232)
    at com.android.dx.command.dexer.Main.main(Main.java:174)
    at com.android.dx.command.Main.main(Main.java:91)
Run Code Online (Sandbox Code Playgroud)

如果我grep for v4,我会在build文件夹中看到两个文件.

Binary file build/pre-dexed/debug/support-v4-19.0.0-2ba5fdd60a6c3836b3104a863fe42897da1fa9d1.jar matches
Binary file build/pre-dexed/debug/support-v4-r7-227d905d79b23b20866531d4f700446c040a2ccb.jar matches
Run Code Online (Sandbox Code Playgroud)

我的gradle文件仅包含此支持库:

compile 'com.android.support:support-v13:19.0.0'
Run Code Online (Sandbox Code Playgroud)

关于如何以某种方式包含r7库,我很难过.我跑了gradle clean,当我重新运行assembleDebug时它总是出现在那里.

如果我在构建目录中grep r7,我在文件中看到它:

Binary file build/exploded-bundles/ComGoogleAndroidGmsPlayServices4030.aar/classes.jar matches
Run Code Online (Sandbox Code Playgroud)

如果我不包含v13,那么其他东西不会编译.

但v13是否包含v4支持库?

这是Play服务AAR包和v13库之间的不兼容吗?

我从gradleplease.appspot.com抓起了gradle文件.

删除播放服务并不能解决问题; 同样的错误.

我在build.gradle中的依赖项:

 dependencies {


 // Google Play Services
//compile 'com.google.android.gms:play-services:4.0.30'

// Support Libraries
//compile 'com.android.support:support-v4:19.0.0'
///compile 'com.android.support:appcompat-v7:19.0.0'
//compile 'com.android.support:gridlayout-v7:19.0.0'
compile …
Run Code Online (Sandbox Code Playgroud)

android gradle android-support-library android-gradle-plugin

210
推荐指数
10
解决办法
16万
查看次数

Android Gradle 插件需要 Java 11 才能运行。您当前使用的是 Java 1.8

我下载了最新的 Android Studio,我想运行 Android Jetpack Compose 项目,但是当我运行时,出现错误:

    > Failed to apply plugin 'com.android.internal.application'.
    > Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
    You can try some of the following options:
    - changing the IDE settings.
    - changing the JAVA_HOME environment variable.
    - changing `org.gradle.java.home` in `gradle.properties`.
Run Code Online (Sandbox Code Playgroud)

我已经下载了 Java 11,并在 gradle.properties 中添加了 java 11。

org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-11.0.10.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)

JAVA_HOME 显示 Java 11,但我运行,它不起作用, /Library/Java/JavaVirtualMachines/jdk-11.0.10.jdk/Contents/Home

我应该怎么做?

我的 Android Studio 版本 在此处输入图片说明

我的 Java 版本

    java 11.0.10 2021-01-19 LTS
    Java(TM) SE Runtime …
Run Code Online (Sandbox Code Playgroud)

android gradle android-studio android-gradle-plugin

201
推荐指数
27
解决办法
5万
查看次数

错误:无法在Android SDK中找到gradle包装器.可能需要更新您的Android SDK - Android

我知道有很多类似的问题,但我找不到任何解决方案.此外,我会提供具体案例的详细信息.

我在Ubuntu 16.04 LTS编写了一个Ionic项目,现在我必须构建它才能发布.所以我运行命令:

cordova build --release android
Run Code Online (Sandbox Code Playgroud)

我显示以下错误:

Error: Could not find gradle wrapper within Android SDK. Might need to update your Android SDK.
Looked here: /home/user/Android/Sdk/tools/templates/gradle/wrapper
Run Code Online (Sandbox Code Playgroud)
  • 我没有这个templates/gradle/wrapper目录.
  • 我的Android Studio是2.3,现在是最新版本
  • Android SDK Platform-Tools 25.0.3
  • Android SDK工具25.3.1
  • 所有Android版本从2.1(Eclair)到7.1.1(Nougat)

经过广泛的研究,我将所有与Android Studio相关的环境变量放在文件中/etc/environment.所以现在它看起来像这样:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/game:/home/<user>/Android/Sdk:/home/<user>/Android/Sdk/tools:/home/<user>/Android/Sdk/platform-tools"

ANDROID_HOME=/home/<user>/Android/Sdk
export ANDROID_HOME

JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JAVA_HOME

GRADLE_HOME=/opt/android-studio/gradle/gradle-3.2
export GRADLE_HOME
Run Code Online (Sandbox Code Playgroud)

现在,为了测试环境变量,我运行以下命令:

source /etc/environment
echo $PATH
echo $ANDROID_HOME
echo $JAVA_HOME
echo $GRADLE_HOME
Run Code Online (Sandbox Code Playgroud)

并且正确显示所有路径变量.

所以,看起来环境变量就像他们应该根据各种类似的问题和我搜索过的教程.有谁知道我做错了什么?为什么我仍然会收到Gradle Wrapper错误?

cordova android-gradle-plugin ionic-framework

195
推荐指数
12
解决办法
17万
查看次数

错误:在带有前缀:llvm的ABI的NDK工具链文件夹中找不到工具链

我想使用gradel(gradlew clean build)编译一个开源的android项目(Netguard )但是我遇到了这个错误:

A problem occurred configuring project ':app'.
> Exception thrown while executing model rule: NdkComponentModelPlugin.Rules#cre
ateToolchains
   > No toolchains found in the NDK toolchains folder for ABI with prefix: llvm
Run Code Online (Sandbox Code Playgroud)

我打破了,但没有找到帮助的东西.这是主要的build.gradle:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle-experimental:0.6.0-alpha1'
    }
}
allprojects {
    repositories {
        jcenter()
    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)

这里是build.gradle对的app项目:

apply plugin: 'com.android.model.application'

model {
    android {
        compileSdkVersion = 23
        buildToolsVersion …
Run Code Online (Sandbox Code Playgroud)

android android-ndk android-gradle-plugin

193
推荐指数
16
解决办法
18万
查看次数

Android Material和appcompat Manifest合并失败

我有下一个年级

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0-rc01'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.google.android.material:material:1.0.0-rc01'
}
Run Code Online (Sandbox Code Playgroud)

但是当我想构建应用程序时,我会得到下一个日志:

Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0-alpha3] AndroidManifest.xml:22:18-91
    is also present at [androidx.core:core:1.0.0-alpha3] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
    Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:5:5-19:19 to override.
Run Code Online (Sandbox Code Playgroud)

好! 去清单并执行:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="ru.chopcode.myapplication">

    <application
        tools:replace="android:appComponentFactory"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
    </application>

</manifest>
Run Code Online (Sandbox Code Playgroud)

然后我在Logcat中收到此错误:

Manifest merger failed with multiple errors, see logs that I have …
Run Code Online (Sandbox Code Playgroud)

android build.gradle android-gradle-plugin gradle-plugin

193
推荐指数
19
解决办法
29万
查看次数