簡體   English   中英

Kotlin - IntelliJ 項目設置

[英]Kotlin - IntelliJ Project Setup

我想使用 IntelliJ IDE 使用 Kotlin 為 JVM 啟動一個新項目,但我無法獲得使其工作的配置。 我試圖按照本教程進行操作,之后不起作用(“運行'_DefaultPackage'”選項甚至從未出現過),我開始嘗試憑直覺嘗試應該完成的操作,但沒有成功。 到目前為止發生的事情(反復):

  • 我創建了一個新項目,選擇“Kotlin - JVM”作為項目類型。
  • 我在第二頁上單擊了 Kotlin 運行時的“創建...”按鈕並選擇了“復制到:lib”。
  • 我單擊“完成”,創建的項目有一個與我的項目同名的模塊。 沒有默認的源文件或任何配置。
  • 我創建了一個名為“app.kt”的 Kotlin 文件(我也嘗試過其他名稱,例如“Main.kt”),並將以下源代碼放入:
fun main(args: Array<String>){
    println("Hello world!")
}
  • 我右鍵單擊代碼編輯器和左窗格中的文件以找到教程中提到的“運行 '_DefaultPackage'”選項,但未能在其中找到它。
  • 我創建了一個新的 Kotlin 配置,它要求我放入一個“主類”。 看到這個,我把代碼改成:
public class Main {
    fun main(args: Array<String>) {
        println("Hello world!")
    }
}
  • 我編輯我的配置並將主類設置為“Main”,然后運行配置。 它失敗並顯示以下錯誤:“運行時出錯:在類‘Main’中找不到函數‘main’。

我錯過了什么?

您無法組裝項目,因為 main 方法不是靜態的。 所以你應該在伴隨對象中定義它。

class HelloKotlin {

        companion object {
            @JvmStatic fun main(args: Array<String>) {
                println("Kotlin main is running here!")
            }
        }
    }

有關如何識別頂級main()函數的可運行類或在類中使用main()方法的完整答案都記錄在另一個堆棧溢出答案中:如何運行 Kotlin 類

這包括在命令行、Intellij(如您的問題所問)、Gradle 等中運行。

指定的“主類:”-> com.mypackage.MainKt

並在包“com.mypackage”中創建 Kotlin 文件“Main”

package com.mypackage

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

打開包含主要功能的文件並轉到菜單->“編輯配置”,然后在對話框中選擇“+”,“應用程序”作為類型將名稱設置為您想要的名稱並通過單擊按鈕設置主類在頂部輸入框(標記為“主類”的那個)旁邊。

選擇“使用模塊的類路徑”並從下拉框中選擇您的模塊。 單擊“應用”並關閉對話框。 現在您應該可以使用 shift+F10 運行,使用 shift+F9 進行調試並使用 shift+alt+F10 編輯運行配置。 您還可以通過主屏幕右上角的兩個按鈕運行或調試。

我將 main.kt 文件移動到項目的 src 文件夾中,問題解決了,即 IntelliJ 可以找到 MainKt 類

另一種解決方案:

fun main(){
    println("Hello world!")
}

請記住,它在類聲明之外,還應出現以下圖標:

運行圖標

點擊:

在此處輸入圖片說明

並解決問題。 如果您想在 Main.kt 中嘗試此代碼:

import javax.swing.JFrame

fun main() {
    println("Hi, kotlin !!!")
    val window = Main()
}

class Main {
    constructor(){
        val frame = JFrame()
        frame.setSize(800, 600)
        frame.setLocationRelativeTo(null)
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
        frame.setVisible(true)
    }
}

問候 !

我不得不更新我的 Kotlin 插件(它是最近推出的),然后開始出現用於運行的右鍵單擊選項。 我無法將問題追溯到其他任何事情,所以我想就是這樣。

如果遇到此問題,請右鍵單擊主函數所在的源代碼文件,然后單擊運行、創建或調試。

請注意,main 函數必須具有名稱“main”(無大寫)和“Array”參數。 當我正在制作新項目以使其發揮作用時,那個讓我抓到了幾次。

它的工作正常......請檢查。 復制並粘貼此代碼並運行。

類 MyFirstKotlinClass {

companion object {
    @JvmStatic
    fun main(args: Array<String>) {
        println("=========>>>> run successful")
    }
}

}

對於那些使用 intelliJ-2021 社區的人,我在這里找到了解決方案,基本上說將您的主要功能放在您創建的類之外。 立即,運行按鈕將出現,配置將自行更新

您可以通過創建目錄和 XML 文件來手動添加運行配置文件。

.run/MainKt.run:

<component name="ProjectRunConfigurationManager">
  <configuration default="false" name="MainKt" type="JetRunConfigurationType" nameIsGenerated="true">
    <option name="MAIN_CLASS_NAME" value="MainKt" />
    <module name="untitled.main" />
    <shortenClasspath name="NONE" />
    <method v="2">
      <option name="Make" enabled="true" />
    </method>
  </configuration>
</component>

您可以使用項目名稱更改untitled.main

只需右鍵單擊要運行的類並選擇 Run ClassNameKt 選項,其余的將由 IntelliJ IDE 完成。

暫無
暫無

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

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