簡體   English   中英

即使我已經聲明了它,也找不到 Main 方法

[英]Main method not found even if I've declared it

我想用 main 方法創建一個簡單的 java 類,但是當我編譯我的代碼時,我收到以下錯誤消息:

錯誤:在類 errors.TestErrors 中找不到 Main 方法,請將 main 方法定義為:public static void main(String[] args)

這是源代碼:

package errors;

public class TestErrors {
    public static void main(String[] args){
        System.out.println("hello");
    }
}

為什么我看到這個錯誤,你可以注意到我已經聲明了 main 方法!

正如我在評論中所說,看起來您已經在自己的類中聲明了一個String類。 為了證明這一點,我創建了一個基本示例:

class String {
}

public class CarelessMain {
    public static void main(String[] args) {
        System.out.println("won't get printed");
    }
    public static void main(java.lang.String[] args) {
        System.out.println("worked");
    }
}

如果您執行此代碼,它將在控制台中打印"worked" 如果您注釋第二個main方法,應用程序將拋出一條錯誤消息(與您的環境類似):

錯誤:在 edu.home.poc.component.CarelessMain 類中找不到 Main 方法,請將 main 方法定義為:

 public static void main(String[] args)

如果您的完整項目未正確配置,或者您的項目中的一個類仍然存在一些錯誤,則通常會發生這種情況,在這種情況下,IDE 將提示說明該項目包含一些錯誤並且您仍然繼續(即運行您的類),因為項目有一些新的錯誤不會創建類,IDE 將運行以前可用的類

為了確保這是你的情況,你可以在你的項目中添加新類並嘗試運行它,如果你沒有這樣的類存在,那么它就是一個完美的證據

只需檢查您的java文件,它尚未保存。 編譯前請保存所有java文件。

如果上述答案對您不起作用:請確保您的方法定義中的“main”沒有大寫。

OK: public static void main(String[] args)

錯誤: public static void Main(String[] args)

盡管錯誤消息明確了 main 方法所需的語法,但很難發現不正確的大寫字母。 今天我花了大約 30 分鍾的故障排除時間才找到這個錯字。 這顯然不是 OP 的問題,而是產生相同錯誤消息的另一種簡單/可能的方法,這個答案可能會幫助其他用戶。

我剛才有這個問題。 出現此錯誤是因為我切換出的 JRE 文件沒有完整的庫。 在我更正/添加了正確的 JRE 系統庫后,問題就消失了。

右鍵單擊類名(您正在嘗試運行)-> 運行方式-> 運行配置-> 在主類選項卡下

寫下你的主要類名並點擊運行。

嘗試注釋第一行。

//package errors;

暫無
暫無

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

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