昨天我更新的Android Studio版本和科特林插件版本。
Android的Studio版本:3.1.2
科特林版本:41年2月1日
当我使用此配置创建一个Android项目,我得到科特林编译器警告说
女:/home/ganeshtikone/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jre7/1.2.41/9e7a6f582de73d9cdc6c56ef4e23604a0ee55768/kotlin-stdlib-jre7-1.2.41.jar:科特林-STDLIB-jre7已经过时了。 请使用科特林-STDLIB-JDK7代替
改变每个建议,然后我收到以下错误
意想不到输入:ImmutableJarInput {名称= org.jetbrains.kotlin:科特林-STDLIB-jre7:41年2月1日,文件= /家庭/ ganeshtikone /工作区/五月-2018 / FHS /应用程序/生成/中间体/变换/ desugar /级/调试/ 45.jar,CONTENTTYPES = CLASSES,范围= EXTERNAL_LIBRARIES,状态= REMOVED}
转到工具>科特林>配置科特林插件更新和检查更新,然后在你的应用程序文件的gradle与JDK JRE替换
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
重要更新
设定配置前必须检查JDK版本
科特林gradle这个配置页有详细的这方面的信息。
首先,在gradle这个文件检查科特林版本。
如果( kotlin_version == '1.2.x'
使用jdk
不jre
)
首先检查在文件>项目结构你的JDK版本。
或者,在检查build.gradle
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
如果(jdk_version == 1.8)
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
如果(jdk_version == 1.7)
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
如果(jdk_version是<1.7)
implementation"org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
否则,如果(NO JDK版本设置在项目结构)
if(Android_Studio_Version < 2.2.1){
your_jdk_version = 1.7;
}
else {
your_jdk_version = 1.8;
}
由于Android工作室与JDK 1.8捆绑在一起,因为2.2.1版本 。
2.否则,如果( kotlin_version == '1.1.x'
)(使用JRE不JDK)
implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version" // or jre8
更新版本科特林?
您可以从更新工具版本科特林>科特林>配置科特林更新
事情是及物动词导入这些库。 运行摇篮任务dependencies
弄清楚什么。
就我而言,这是io.vertx:vertx-lang-kotlin-coroutines:3.5.1
。
如果没有为依赖没有更新,没有什么可以做这件事
看完后科特林摇篮脚本主题我发现,一些ponits
如果你的目标JDK 7或JDK 8,你可以使用包含在新的JDK版本添加的API附加扩展功能科特林标准库的扩展版本。 相反科特林-STDLIB的,请使用以下的一个依赖:
编译 “org.jetbrains.kotlin:科特林-STDLIB-JDK7”
编译 “org.jetbrains.kotlin:科特林-STDLIB-jdk8”
在我的项目:我使用的实现“科特林-STDLIB-jdk8 org.jetbrains.kotlin”。 我想这是因为在build.graddle设置compileOptions的
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
你必须交换下面的代码:
implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
没有JRE> JDK
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
文章来源: kotlin-stdlib-jre7 is deprecated. Please use kotlin-stdlib-jdk7 instead