簡體   English   中英

沒有靜態初始化程序的java.lang.ExceptionInInitializerError

[英]java.lang.ExceptionInInitializerError without a static initializer

我收到java.lang.ExceptionInInitializerError,但沒有靜態初始值設定項。

碼:

public static final File STANDARD_INDEX_FILE = new File(HTMLFileLoader.class.getClassLoader().getResource("index.html").getPath()); // Line 16 

HTMLFileLoader類為空。

例外:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at net.guardian.Guardian.main(Guardian.java:12)
Caused by: java.lang.NullPointerException
    at net.guardian.socket.MainSocket.<init>(MainSocket.java:16)
    at net.guardian.socket.MainSocket.<clinit>(MainSocket.java:24)
    ... 1 more

這個:

public static final File STANDARD_INDEX_FILE = new File(HTMLFileLoader.class.getClassLoader().getResource("index.html").getPath()); // Line 16 

與此完全相同:

public static final File STANDARD_INDEX_FILE;

static {
  STANDARD_INDEX_FILE = new File(HTMLFileLoader.class.getClassLoader().getResource("index.html").getPath()); // Line 16 
}

就像在編譯后的代碼中那樣。

因此,您確實有一個靜態初始化程序。 並且該初始化程序塊中的某處發生了異常。

暫無
暫無

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

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