プロジェクトで次のように指定しました。
モジュール
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.0.0'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-Android:1.0.0'
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version'
}
事業
buildscript {
ext.kotlin_version = '1.3.0'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.2.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
ラッパー
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.Zip
Gradleの同期はエラーなしで完了しますが、
GlobalScope.launch {}
「起動」は次のエラーでマークされています:
「サポートされていません[APIバージョンが1.3未満のリリースコルーチンは使用できません]」
無効にして完全に再構築しました-何が欠けていますか?
**編集
エラーが発生した場所を確認できます。
kotlin/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/checkers/coroutineCallChecker.kt
fun checkCoroutinesFeature(languageVersionSettings: LanguageVersionSettings, diagnosticHolder: DiagnosticSink, reportOn: PsiElement) {
if (languageVersionSettings.supportsFeature(LanguageFeature.ReleaseCoroutines)) {
if (languageVersionSettings.apiVersion < ApiVersion.KOTLIN_1_3) {
diagnosticHolder.report(Errors.UNSUPPORTED.on(reportOn, "cannot use release coroutines with api version less than 1.3"))
}
return
}
M2キャッシュをクリアして、すべての依存関係を再インポートします。これで問題が解決します。理由は、それが以前に機能していた場合、必要なすべての依存関係があり、キャッシュをクリアすることで、コルーチンの実行に必要なすべての必要なライブラリを再フェッチすることです。
依存関係に標準ライブラリがありません。プラグインはそれを検査して、使用するAPIのバージョンを判別します。
追加 "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
エラーを修正するための依存関係として。
プロジェクト名-> Maven-> Reimportを右クリックします。私の場合、それは助けになりました。
Android Studio:
この後、すべての警告が消えます。
これより前に問題がなければ、おそらくこれは新しく追加された依存関係の1つにある可能性があります。これは私にとっても当てはまり、古いバージョンの「スカッシュ」を追加したところ、まったく同じエラーが発生しました。 「スカッシュ」を最新バージョンに更新した後、すべて問題ありません。