Android:编译错误:任务':app:compileDebugJava'执行失败

时间:2015-12-28 05:54:33

标签: android android-gradle build.gradle android-recyclerview recycler-adapter

我遇到以下错误:

Error:(89, 39) error: incomparable types: CAP#1 and int  
where CAP#1 is a fresh type-variable:  
CAP#1 extends Object from capture of ?Note: Some input files use unchecked or   unsafe operations.  
Note: Recompile with -Xlint:unchecked for details.  
Error:Execution failed for task ':app:compileDebugJava'.  
  

编译失败;请参阅编译器错误输出以获取详细信

我的Gradle文件如下所示:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0 rc3"

    repositories {
        maven { url "https://jitpack.io" }
        mavenCentral()
        jcenter()

    }

    defaultConfig {
        applicationId "wishlist.oj.app"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

    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.0.0'
    compile 'com.android.support:recyclerview-v7:21.+'
    compile 'com.android.support:cardview-v7:21.+'
}

错误来自我的Recycler View适配器文件,它只是将多页面文本视图扩展到回收站视图

3 个答案:

答案 0 :(得分:5)

  

错误:任务':app:compileDebugJava'执行失败。

良好实践

首先启用multiDexEnabled,然后升级您的support:recyclerviewsupport:appcompatsupport:cardview版本

  

Android SDK Build Tools中提供的Gradle Android插件   21.1和更高版本支持multidex作为构建配置的一部分。确保您更新Android SDK Build Tools工具和Android   使用SDK Manager支持存储库到最新版本   尝试为multidex配置您的应用。

设置应用开发项目以使用multidex配置需要您对应用开发项目进行一些修改。特别是您需要执行以下步骤:

  1. 更改Gradle版本配置以启用multidex
  2. 修改您的清单以引用MultiDexApplication类
  3. 修改您的应用Gradle构建文件配置以包含支持库并启用multidex输出。

         android {
            compileSdkVersion 23
            buildToolsVersion "23.0.1"
    
            defaultConfig {
                ...
                minSdkVersion 16
                targetSdkVersion 23
                ...
    
                // Enabling multidex support.
                multiDexEnabled true
            }
            ...
        }
    
        dependencies {
          compile 'com.android.support:multidex:1.0.0'
          compile 'com.android.support:appcompat-v7:23.1.1'
          compile 'com.android.support:recyclerview-v7:23.1.1"
          compile 'com.android.support:cardview-v7:23.1.1'
         }
    

    然后清除 - 重建 - 重新启动 - 同步您的项目

答案 1 :(得分:2)

更改




  compile'c​​om.android.support:appcompat-v7:23.1.1'
compile'c​​om.android.support: recyclerview-v7:23.1.1“
编译'com.android.support:cardview-v7:23.1.1'

答案 2 :(得分:0)

只需添加。

android:{
 lintOptions {
        checkReleaseBuilds false
        // Or, if you prefer, you can continue to check for errors in release builds,
        // but continue the build even when errors are found:
        abortOnError false
    }

}