Gradle:带有id' android-library'的插件未找到

时间:2014-06-04 11:28:10

标签: android gradle

我正在尝试使用Gradle自动化我的项目。

我有几个应用程序和一个库项目。 仔细阅读official doc后,这是我build.gradle的简化视图:

buildscript {
    repositories {
        mavenCentral()
        maven {
            url "http://saturday06.github.io/gradle-android-scala-plugin/repository/snapshot"
        }
    }
    dependencies {
        // 0.8.3 con Gradle 1.10
        classpath 'org.gradle.api.plugins:gradle-android-plugin:1.2.1'
    }
}

apply plugin: 'idea'

project(':MyApp') {
    ext.apl = true
}

project(':MyLibrary') {
    ext.apl = false
}

subprojects {
    if (project.apl) {
        apply plugin: 'android'
        dependencies {
            compile 'ch.acra:acra:4.5.0'
        }
    }
    if (project.scala) {
        apply plugin: 'android-scala'
        scala {
            target "jvm-1.7"
            addparams '-feature'
        }
    } else {
        apply plugin: 'android-library'
    }
    android {
        compileSdkVersion 17
        buildToolsVersion '19.1.0'

        signingConfigs { ... }
        defaultConfig {
            minSdkVersion 8
            targetSdkVersion 17
        }

        sourceSets {
            compileOptions {
                sourceCompatibility JavaVersion.VERSION_1_7
                targetCompatibility JavaVersion.VERSION_1_7
            }
        }

        buildTypes {
            debug {
                runProguard false
                proguardFile file('proguard-rules.txt')
                signingConfig signingConfigs.depurar
            }

            release {
                runProguard true
                proguardFile file('proguard-rules.txt')
                signingConfig signingConfigs.entregar
            }
        }
    }
}

project(':MyLibrary') {
    dependencies {
        compile "com.github.tony19:logback-android-core:1.1.1-2"
        compile "com.github.tony19:logback-android-classic:1.1.1-2"
        compile "org.slf4j:slf4j-api:1.7.6"

    }
}

project(':MyApp') {
    dependencies {
        compile 'com.android.support:appcompat-v7:19.1.0'
        compile('org.apache.httpcomponents:httpmime:4.1.1') {
            transitive = false
        }
        compile project(':Bibl')
    }
}

我的设置.gradle是:

include 'MyLibrary', 'MyApp'

只有一个build.gradle。

问题在于Gradle抱怨

Plugin with id 'android-library' not found

每当我尝试使用此插件时 使用apply plugin:' android'没问题。

文档明确指出,对于图书馆和android-library'必须使用。 我使用的是Gradle 1.10。

对于像1.2.1这样的最新版gradle-android-plugin,doc是否已过时?因为官方文档适用于0.9版本。

1 个答案:

答案 0 :(得分:2)

  

对于像1.2.1这样的最新版gradle-android-plugin,doc是否已过时?

引用the documentation for gradle-android-plugin

  

我们非常遗憾地宣布此插件的开发已经停止。 Google已经基于Gradle创建了自己的Android开发工具链,后者取代了这个插件。

     

有关详细信息,请参阅http://tools.android.com/tech-docs/new-build-system/user-guide

我通常将android-library与官方Gradle for Android插件相关联;我不知道弃用的gradle-android-plugin是否支持它。