为什么在gradle中出错?

时间:2016-03-13 10:02:28

标签: java android opencv

我在我的项目中尝试导入OpenCV模块。我找到一些很好的教程并创建新项目来测试OpenCV实现。 问题是,当我在一个新项目中导入库OpenCV时,一切运行良好(教程here)。

但是当我完成相同的现有项目时,我收到了错误

enter image description here

我尝试修复但没有成功。 我该如何解决?

Gradle文件

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.5.0'
    }
}

apply plugin: 'com.android.application'

repositories {
    jcenter()
}

dependencies {
    compile 'com.android.support:support-v4:23.2.0'
    compile 'com.android.support:support-v13:23.2.0'
    compile 'com.android.support:cardview-v7:23.2.0'
    compile 'com.android.support:appcompat-v7:23.2.0'
    compile files('libs/svgandroid.jar')
    compile files('libs/svg-android.jar')
    compile files('libs/guava-16.0.1.jar')
}

// The sample build uses multiple directories to
// keep boilerplate and common code separate from
// the main sample code.
List<String> dirs = [
    'main',     // main sample code; look here for the interesting stuff.
    'common',   // components that are reused by multiple samples
    'template' // boilerplate code that is generated by the sample  template process
]

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        minSdkVersion 22
        targetSdkVersion 23
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

    sourceSets {
        main {
            dirs.each { dir ->
                java.srcDirs "src/${dir}/java"
                res.srcDirs "src/${dir}/res"
            }
        }
        androidTest.setRoot('tests')
        androidTest.java.srcDirs = ['tests/src']
    }
}

2 个答案:

答案 0 :(得分:1)

最新Gradle:2.11

选中:gradle -v

在此处下载:http://services.gradle.org/distributions/gradle-2.11-bin.zip

最新的Android构建工具1.5.0

如果您将以下代码段添加到build.gradle文件的顶部,gradle将更新构建工具。

buildscript {
    repositories {
        jcenter() // or mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.5.0'
    }
}

在此处阅读更多内容:http://tools.android.com/tech-docs/new-build-system

答案 1 :(得分:0)

你确定它是apply plugin: 'com.android.library'吗? 您可以尝试将其替换为apply plugin: 'com.android.application'。 如果您更改了,则必须在applicationId "package path"中提供defaultconfig

   defaultConfig {
        applicationId "full package"
      //extra stuffs
    }

另外需要注意的是,为什么不在dependency编译它?喜欢这里

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
      //Other extra compilations 
    compile 'nu.pattern:opencv:2.4.9-4' //OpenCV compilation
}