Android Studio: ไม่พบปลั๊กอินที่มี id 'android-library'


150

ฉันพยายามทำให้ ActionBarSherlock ทำงานและมีปัญหา ปัญหาหนึ่งที่ฉันเจอคือข้อความต่อไปนี้เมื่อพยายามสร้าง:

Plugin with id 'android-library' not found

โดยเฉพาะ:

D:\Projects\Android\actionbarsherlock>D:\Projects\Android\gradlew --info build
Starting Build
Settings evaluated using empty settings script.
Projects loaded. Root project using build file 
  'D:\Projects\Android\actionbarsherlock\build.gradle'.
Included projects: [root project 'actionbarsherlock']
Evaluating root project 'actionbarsherlock' using build file 
  'D:\Projects\Android\actionbarsherlock\build.gradle'.

FAILURE: Build failed with an exception.

* Where:
Build file 'D:\Projects\Android\actionbarsherlock\build.gradle' line: 1

* What went wrong:
A problem occurred evaluating root project 'actionbarsherlock'.
> Plugin with id 'android-library' not found.

ฉันถือว่านี่เป็นปัญหา ABS ในหัวข้อแยกดังนั้นที่นี่ฉันอยากรู้วิธีการแก้ไขปัญหาทั่วไปของ:

Plugin with id 'android-library' not found

นี่คือ build.gradle:

apply plugin: 'android-library'

dependencies {
  compile 'com.android.support:support-v4:18.0.+'
}

android {
  compileSdkVersion 14
  buildToolsVersion '17.0.0'

  sourceSets {
    main {
      manifest.srcFile 'AndroidManifest.xml'
      java.srcDirs = ['src']
      res.srcDirs = ['res']
    }
  }
}

คุณช่วยได้ไหม

คำตอบ:


263

สั่ง Gradle ให้ดาวน์โหลดปลั๊กอิน Android จากที่เก็บ Maven Central

คุณทำได้โดยการวางโค้ดต่อไปนี้ที่จุดเริ่มต้นของไฟล์ Gradle build:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.1.1'
    }
}

แทนที่สตริงเวอร์ชัน1.0.+ด้วยเวอร์ชันล่าสุด รุ่นที่วางจำหน่ายของปลั๊กอิน Gradle สามารถพบได้ในอย่างเป็นทางการ Maven Repositoryหรือในการค้นหาสิ่งประดิษฐ์ MVNRepository


สำหรับข้อมูลที่เป็นปัจจุบันมากขึ้นขอแนะนำให้ใช้หมายเลขรุ่นที่สูงขึ้นสำหรับ com.android.tools ตามที่ @Elenasys พูดถึงในภายหลัง มิฉะนั้นคุณจะทำงานเป็นปัญหานี้: discuss.gradle.org/t/...
RenniePet

1
ฉันต้องการที่จะเพิ่มนี้ของฉันโครงการ build.gradle เพิ่มไปยังโมดูลหนึ่งไฟล์ gradle ไม่ได้ช่วย
syonip

ฉันจะรู้ได้อย่างไรว่าฉันดาวน์โหลดไฟล์ gradel เวอร์ชันใด Btw 1.1.1 ใช้งานได้สำหรับฉัน
Binil Jacob

2
@binil นี่เป็นเวอร์ชั่นของ Android Gradle plugin ไม่ใช่ Gradle นั่นเอง ทุกรุ่นมีการระบุไว้ใน Maven Repository mvnrepository.com/artifact/com.android.tools.build/gradleเพื่อแสดงรายการการสร้าง build dependenciesgradle buildEnvironment
Grzegorz Żur

stackoverflow.com/a/48451418/2186220คำตอบนี้ในเธรดตัวเองทำงานให้ฉันตั้งแต่เดือนสิงหาคม 2019
Bot

28

เพียงเพื่อบันทึก (เอาฉันสักครู่) ก่อนที่คำตอบ Grzegorzs ทำงานให้ฉันฉันต้องติดตั้ง " android repository สนับสนุน " ผ่านทาง SDK Manager!

ติดตั้งและเพิ่มรหัสต่อไปนี้ใช้ปลั๊กอิน: 'android-library' ใน build.gradle ของโฟลเดอร์ actionbarsherlock!

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.+'
    }
}

@beworker ฉันได้ติดตั้ง "android repository แล้ว" แต่ยังคงเป็นปัญหาเดียวกัน: "ข้อผิดพลาด: (1, 0) ปลั๊กอินที่มี id 'android' ไม่พบ"
Sunishtha Singh


10

ในเวอร์ชันที่ใหม่กว่าปลั๊กอินเปลี่ยนชื่อเป็น:

apply plugin: 'com.android.library'

และตามคำตอบอื่น ๆ ที่ได้กล่าวไปแล้วคุณต้องใช้เครื่องมือ gradle เพื่อใช้งาน เมื่อใช้ 3.0.1 คุณต้องใช้ Google repo ไม่ใช่ mavenCentral หรือ jcenter:

buildscript {
    repositories {
        ...
        //In IntelliJ or older versions of Android Studio
        //maven {
        //   url 'https://maven.google.com'
        //}
        google()//in newer versions of Android Studio
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
    }
}

6

ใช้mavenCentral()หรือ jcenter()เพิ่มbuild.gradleสคริปต์ในไฟล์:

buildscript {
    repositories {
        jcenter()
    }

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

1

เพิ่มด้านล่างลงในbuild.gradleโมดูลโครงการ:

// ไฟล์สร้างระดับบนสุดที่คุณสามารถเพิ่มตัวเลือกการกำหนดค่าทั่วไปให้กับโครงการย่อย / โมดูลทั้งหมด

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.