IntelliJ
でKotlinを学習するために tutorial から始めました。
fun main(args: Array<String>) {
println("lol")
}
このメッセージで実行が中断されますError:(5, 5) Kotlin: Unresolved reference: println
IntelliJを使用するのは初めてです。Java
プロジェクトでも作業したことはありません。
編集:私は他の question をすでに見ました。答えは私の状況では無効です。
Intellij IDEAプラグインとプロジェクトで使用するKotlinランタイム/コンパイラーは一致する必要があります。たとえば、IDEプラグインがベータ1であるが、M12を使用するGradle/Mavenプロジェクトの場合、説明したとおりの問題が発生します。すべてが揃っていることを確認してください。
それでも問題が解決しない場合は、一部の古いプラグインでIntellij IDEAのキャッシュをクリアする必要があります([ファイル]メニュー、[キャッシュをクリアして再起動]、再起動オプションを選択)。
誰かがこれに出くわし、Invalidate Cache
もUpdate Kotlin's Version
も機能しない場合:
1)まず、IDEの外部からビルドできることを確認してください。たとえば、gradle
を使用している場合:
gradle clean build
すべてが順調であれば、環境はKotlin
で作業するのに適しています。
2)IDEビルドを修正するには、以下を試してください:
プロジェクト構造-> {モジュールの選択}-> Kotlin-> FIX
こちらのJetBrainのメンバーが提案したとおり: https://discuss.kotlinlang.org/t/intellij-kotlin-project-screw-up/597
私の場合、それは誤って設定されたIntelliJインスタンスでした。
プロジェクト構造-> SDK-> Java SDKを再度削除して追加します
この問題に遭遇しました。 build.gradeに以下を追加する必要がありました。
apply plugin: 'kotlin-Android'
私にとっては、プロジェクトのプロジェクト構造にGradleライブラリが欠けていたためです。
Build.gradleに追加するだけです:apply plugin: 'idea'
そして、実行します:$ gradle idea
その後、gradleは依存関係ライブラリを再構築し、参照が認識されます!
OK、私はここに数回来ましたが、これがどのようにまたはなぜ起こるのか完全にはわかりませんが、読むことはKotlin/JVMの不一致を示唆しています。私はこのページで言及された多くのことを試みましたが、完全に成功するわけではありません。これは、IDEがIDEを介してテストを実行しようとした後にメッセージパネルに表示されていた一種の症状でした。ただし、コードパネルには、モジュールが見つからないかインポートできない、またはそれ以外のものがないことを示す赤い線がありません。
私のプロジェクト(これを書いている時点)は、IntelliJのgradle 4.10.2 kotlin 1.3プロジェクトです(IntelliJ IDEA 2018.2.5(Ultimate Edition)Build#IU-182.4892.20、2018年10月16日ビルド)
ただし、まずはキャッシュを無効にして再起動しました。その後、gradle cleanビルドを実行しました。プロジェクトを再構築した後もまだ喜びはありません。プロジェクト設定に入り、コンパイラバージョンがJava 8に設定されていないことに気付きました。コンパイラ/ Kotlin /ターゲットJVMバージョンとコンパイラ/ Java /プロジェクトバイトコードを1.8/8に設定しました(以下を参照) 、その後IDEでいくつかのテストを実行し、ビジネスに戻りました!私の場合解決した参照。
次のようにkotlin
を追加することで問題が解決しました
presentation.gradle(app.gradle)
apply plugin: 'com.Android.application'
apply plugin: 'kotlin-Android' // here
apply plugin: 'kotlin-Android-extensions' // and here
Android {
...
}
dependencies {
...
}
domain.gradle(純粋なkotlin)
Android Studioがドメインモジュールを純粋なJavaモジュールとして作成し、プラグインをJavaとして適用し、Android/Kotlinであるプレゼンテーションモジュールで使用したため、ここでエラーがスローされました。モジュール
Android Studioはパッケージのパスを見つけてインポートしますが、非互換性によりビルドが許可されません。
次のように
apply plugin: 'Java'
とswithをkotlinに削除するだけです
apply plugin: 'kotlin' // here is
dependencies {
...
}
...
data.gradle
apply plugin: 'com.Android.library'
apply plugin: 'kotlin-Android' // here
apply plugin: 'kotlin-Android-extensions' // and here
Android {
...
}
dependencies {
..
}
役に立つと思います
IDEA 14.1.5、Kotlin v.1.0.0-beta-1038-IJ141-17でも同じでした。
Kotlinは、新しいプロジェクトの作成時に独自のリストエントリ(Javaなど)を取得しますが、動作する設定は次のとおりです。
新規|プロジェクト| Java | 「Kotlin(Java)」(Project SDKも構成されていることを確認してください)
ライブラリを使用:作成、「コピー先:lib」。
スタンドアロンKotlinプロジェクトの可能な解決策は、ルートプロジェクト内に明示的にKotlin標準ライブラリを含めることです。
IntelliJ IDEAでそれを行うには:
ビルドフォルダーのクリーンアップ、gradle clean build
の実行、AS invalidate cache(x2)の実行、Kotlinプラグインの再インストール、PCの再起動など、すべてを試しました。
しかし、これらすべてを実行した後も最終的には動作しませんでしたが、プロジェクトbuild.gradle
からの削除も実行しました:apply plugin: 'kotlin-Android-extensions'
、gradle sync、そして再追加が動作しました
場合によっては、同様の状況で(ケースが非常に単純であるため、問題ではないと思います)、kotlinファイルパッケージをチェックする価値があります。
同じパッケージ内にKotlinファイルがあり、そこにいくつかのクラスを配置し、パッケージ宣言を見逃した場合、IntelliJ内で、同じパッケージにクラスがあるが、パッケージの定義なしにIntelliJが表示します:
エラー:(5、5)Kotlin:未解決の参照:...