昨天我更新了Android Studio版本和Kotlin插件版本.
Android Studio版本:3.1.2
Kotlin版本:1.2.41
当我使用这个配置创建一个Android项目时,我得到了Kotlin Compiler的警告
w:/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: kotlin-stdlib-jre7已弃用.请改用kotlin-stdlib-jdk7
根据建议改变,然后我得到跟随错误
意外输入:ImmutableJarInput {name = org.jetbrains.kotlin:kotlin-stdlib-jre7:1.2.41,file =/home/ganeshtikone/Workspace/May-2018/fhs/app/build/intermediates/transforms/desugar/stage/debug/45.jar,contentTypes = CLASSES,scopes = EXTERNAL_LIBRARIES,status = REMOVED}
Ama*_*ena 80
转到工具> Kotlin>配置Kotlin插件更新并检查更新然后在您的应用程序gradle文件中用jdk替换jre
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
Run Code Online (Sandbox Code Playgroud)
Khe*_*raj 23
Kotlin gradle配置页面包含有关此内容的详细信息.
首先在gradle文件中检查你的kotlin版本.
if(
kotlin_version == '1.2.x')(使用jdkNOTjre)
首先在文件>项目结构中检查您的jdk版本.
或者登记入住 build.gradle
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
Run Code Online (Sandbox Code Playgroud)
if(jdk_version == 1.8)
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
Run Code Online (Sandbox Code Playgroud)
if(jdk_version == 1.7)
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
Run Code Online (Sandbox Code Playgroud)
if(jdk_version <1.7)
implementation"org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
Run Code Online (Sandbox Code Playgroud)
else if(项目结构中没有设置jdk版本)
if(Android_Studio_Version < 2.2.1){
your_jdk_version = 1.7;
}
else {
your_jdk_version = 1.8;
}
Run Code Online (Sandbox Code Playgroud)
因为Android Studio与2.2.1版本捆绑在一起jdk 1.8 .
2. else if(
kotlin_version == '1.1.x')(使用jre NOT jdk)
implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version" // or jre8
Run Code Online (Sandbox Code Playgroud)
您可以从Tools> Kotlin> Configure Kotlin Updates更新Kotlin版本
有些东西正在传递这些库.运行Gradle任务dependencies以找出什么.
在我的情况下,它是io.vertx:vertx-lang-kotlin-coroutines:3.5.1.
如果没有针对依赖项的更新,则无法对此进行更新
在阅读Kotlin Gradle脚本主题之后,我发现一些问题
如果您以JDK 7或JDK 8为目标,则可以使用Kotlin标准库的扩展版本,该库包含新JDK版本中添加的API的其他扩展功能。代替kotlin-stdlib,请使用以下依赖项之一:
编译“ org.jetbrains.kotlin:kotlin-stdlib-jdk7”
编译“ org.jetbrains.kotlin:kotlin-stdlib-jdk8”
我在项目中使用了实现“ org.jetbrains.kotlin:kotlin-stdlib-jdk8”。我认为这是因为在build.graddle中设置了compileOptions
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23522 次 |
| 最近记录: |