试图将模块添加到项目中.找不到ID为'kotlin-android'的插件 [英] Trying to add module to project. Plugin with id 'kotlin-android' not found
问题描述
我正在尝试将epub阅读器库添加到我已经创建的项目中.我想作为模块添加到项目中的库是Folio Reader库( https://github .com/FolioReader/FolioReader-Android ).我已将此库下载到我的计算机上,并尝试通过文件->新建->导入模块将其添加.但是,在此过程中,我收到此错误:
I am trying to add a epub reader library to a project I have already created. The library I am trying to add to my project as a moduel is the Folio Reader Library (https://github.com/FolioReader/FolioReader-Android). I have downloaded this library on my computer and have tried adding it through File -> New -> Import Module. However, during the process I receive this error:
ERROR: Plugin with id 'kotlin-android' not found.
此文件位于Folio Reader库的build.gradle文件中.
This file is located in the build.gradle file of the Folio Reader Library.
build.gradle文件:
build.gradle file:
apply plugin: 'com.android.library'
apply from: '../config/quality/quality.gradle'
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
ext {
bintrayRepo = 'maven'
bintrayName = 'folioreader'
publishedGroupId = 'com.folioreader'
libraryName = 'FolioReader'
artifact = 'folioreader'
libraryDescription = 'An epub reader for Android'
siteUrl = 'https://github.com/FolioReader/FolioReader-Android'
gitUrl = 'https://github.com/FolioReader/FolioReader-Android.git'
libraryVersion = versions.folioreaderSdk
developerId = 'mobisystech'
developerName = 'Folio Reader'
developerEmail = 'mahavir@codetoart.com'
licenseName = 'FreeBSD License'
licenseUrl = 'https://en.wikipedia.org/wiki/FreeBSD_Documentation_License#License'
allLicenses = ["FreeBSD"]
}
android {
useLibrary 'org.apache.http.legacy'
compileSdkVersion versions.androidCompileSdk
defaultConfig {
minSdkVersion versions.androidMinSdk
targetSdkVersion versions.androidTargetSdk
versionCode versions.projectVersionCode
versionName versions.projectVersionName
vectorDrawables.useSupportLibrary = true
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src/main/java']
res.srcDirs = ['res']
}
test {
java.srcDirs = ['src/test/java']
}
}
packagingOptions {
exclude 'META-INF/ASL2.0'
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
exclude 'META-INF/services/javax.annotation.processing.Processor'
}
lintOptions {
abortOnError false
lintConfig file("lint.xml")
}
checkstyle {
ignoreFailures = true
}
}
apply from: '../folioreader/bintray/installv1.gradle'
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation "androidx.appcompat:appcompat:$versions.appcompat"
implementation "androidx.constraintlayout:constraintlayout:$versions.constraintLayout"
implementation "androidx.recyclerview:recyclerview:$versions.recyclerview"
implementation "com.google.android.material:material:$versions.material"
testImplementation 'junit:junit:4.12'
implementation 'org.slf4j:slf4j-android:1.7.25'
implementation 'com.daimajia.swipelayout:library:1.2.0@aar'
//Kotlin
implementation "org.jetbrains.kotlin:kotlin-stdlib:$versions.kotlin"
implementation 'org.greenrobot:eventbus:3.1.1'
implementation "com.fasterxml.jackson.core:jackson-core:$versions.jackson"
implementation "com.fasterxml.jackson.core:jackson-annotations:$versions.jackson"
implementation "com.fasterxml.jackson.core:jackson-databind:$versions.jackson"
implementation "com.fasterxml.jackson.module:jackson-module-kotlin:$versions.jackson"
implementation "com.google.code.gson:gson:$versions.gson"
implementation "com.squareup.retrofit2:retrofit:$versions.retrofit"
implementation "com.squareup.retrofit2:converter-jackson:$versions.retrofit"
implementation "com.squareup.retrofit2:converter-gson:$versions.retrofit"
// R2 modules
api("com.github.codetoart:r2-shared-kotlin:$versions.r2SharedKotlin") {
changing = true
}
api("com.github.codetoart:r2-streamer-kotlin:$versions.r2StreamerKotlin") {
exclude group: "org.slf4j", module: "slf4j-api"
changing = true
}
// Only ReflectionUtils in Spring framework is used
implementation 'org.springframework:spring-core:4.3.19.RELEASE'
// Lifecycle
implementation "androidx.lifecycle:lifecycle-
extensions:$versions.lifecycle"
}
apply from: '../folioreader/bintray/bintrayv1.gradle'
我已经尝试过这里发布的一些答案,但是它们不起作用. 我该如何解决这个问题?
I have tried some of the answers posted here but they do not work. How can I solve this problem?
我添加了
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.4-3"
在我的依赖项中,并收到以下错误:
in my dependencies and have received the following error:
ERROR: Could not get unknown property 'versions' for object of type org.gradle.api.internal.plugins.DefaultExtraPropertiesExtension.
它发生在同一build.gradle文件的第20行:
it is occuring on line 20 on the same build.gradle file:
libraryVersion = versions.folioreaderSdk
更新到新版本不起作用:
updating to newer version does not work:
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.40"
推荐答案
看看Github上的库结构,看来您需要执行以下操作
Looking at the library structure on Github, it seems you need to do the following
- 转到您的项目级别的build.gradle文件(而不是模块级别的build.gradle)
- 在库的项目级别构建中,查看存储库,依赖项. gradle文件,并将它们复制到您的项目级别的build.gradle文件(包括kotlin-gradle-plugin依赖项)
- Go to YOUR project level build.gradle file (not the module level build.gradle)
- Look at the repositories, dependencies in the Library's project level build.gradle file and copy them over to YOUR project level build.gradle file (including the kotlin-gradle-plugin dependency)
注意:如果您以前没有使用过External
变量语法,则可以在
Note: in case you haven't worked with External
variables syntax before, you can find those variables for this library in the root directory of the github repository.
在这种情况下,写
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$versions.kotlin"`
将解决以下问题(您可以在项目中直接编写)
will resolve to the following (you can directly write this in your project)
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.11"
这篇关于试图将模块添加到项目中.找不到ID为'kotlin-android'的插件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!