簡體   English   中英

IntelliJ Kotlin - 如何修復項目中的“確保您依賴於 Kotlin 標准庫”?

[英]IntelliJ Kotlin - How do I fix "Ensure that you have a dependency on the Kotlin standard library" in a project?

我一直在嘗試使用默認的 IntelliJ 構建系統(不是 Gradle)和 JDK 15 在 IntelliJ IDEA 中設置一個新的 Kotlin 項目。每當它創建默認的 main.kt 文件時,我都會嘗試構建並運行主要的 function ,看起來像這樣:

fun main(args: Array<String>) {
    println("Hello World!")
}

構建在短時間后失敗並出現以下錯誤:

Kotlin:無法訪問內置聲明“kotlin.Array”。 確保您依賴於 Kotlin 標准庫

Kotlin:無法訪問內置聲明“kotlin.String”。 確保您依賴於 Kotlin 標准庫

Kotlin:未解決的參考:println

我嘗試將項目 SDK 更改為 kotlin SDK、Java 14 和 Java 1.8。 我不確定如何添加它要求的依賴項。 任何幫助表示贊賞。

這是依賴項 window 在項目中顯示的內容: 模塊依賴

現在該項目正在使用 JDK 15 和 Kotlin 1.4.10。 我試過更新插件,卸載和重新安裝,停用和重新激活,都無濟於事。

可以在 Google 雲端硬盤上找到項目文件

刪除項目目錄中的 .idea/library 文件,然后在 IDE 提示配置 Kotlin 文件時選擇“使用插件庫”解決了問題。

可能您需要在項目中添加 KotlinJavaRuntime 庫。 請參閱https://www.jetbrains.com/help/idea/mixing-java-and-kotlin-in-one-project.html 中的“在 Java 項目中創建 Kotlin 文件”段落配置后,您應該會在lib 中看到所需的 jars項目中的文件夾。 重建你的項目。 還使文件-> 無效緩存/重新啟動。

對我來說,這有幫助:

  1. 關閉項目
  2. 刪除想法。 文件夾
  3. 打開項目

請提供更多信息並檢查您安裝的 Kotlin 版本:

  1. 工具 > Kotlin > 配置 Kotlin 插件更新:安裝最新版本的 Kotlin

  2. 文件 > 項目結構 > 項目:你的項目 SDK 是什么? 選擇 15(某行 java 版本“15.0.1”)。 如果那里沒有 15,請單擊“+”並添加最新版本(除非您需要舊版本)。

我有一個新安裝了 IntelliJ 2020.3 的 Ubuntu 16.04。 我在這里遇到了同樣的問題。

為了解決這個問題,我在我的項目中創建了一個新的 kotlin 文件。 然后當系統嘗試添加這個新的 Kotlin 文件時,您可以在屏幕右下角找到與“配置項目”相關的通知,單擊該通知。 我得到以下對話框。

然后檢查使用插件庫,這解決了問題。 使用插件庫

我嘗試了上述所有方法,但最終發現,在一個項目中,我的 SDK 在最新的 Intellij 更新后完全損壞。 如果您轉到項目結構 -> 平台設置 -> SDK,我有一個 Kotlin 條目,其中包含去年 Intellij 版本的非現有路徑。 這絕對不是以前存在的,它似乎搞砸了 kotlin 安裝。 在我刪除了該條目並如上所述刪除了庫之后,它又可以正常工作了。

Cmd + ; -> Modules -> Dependencies -> Enable KotlinJavaRuntime checkbox

在這種情況下,它是一個配置錯誤的 IntelliJ 實例。

項目結構 -> SDKs -> kotlinSDK -> + -> ok

重建會很好

在我的例子中,缺少 Kotlin 標准庫 JDK 擴展。 https://mvnrepository.com/artifact/org.jetbrains.kotlin/kotlin-stdlib-jdk8

<dependency>
    <groupId>org.jetbrains.kotlin</groupId>
    <artifactId>kotlin-stdlib-jdk8</artifactId>
    <version>1.7.21</version>
</dependency>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM