2017-04-06 36 views
1

如果您在Java中的右大括號上得到NullPointerException,這是什麼意思?說,例如,右here爲什麼stacktrace指向Java中的右大括號?

SavedState() { 
     this.iZone = DateTimeParserBucket.this.iZone; 
     this.iOffset = DateTimeParserBucket.this.iOffset; 
     this.iSavedFields = DateTimeParserBucket.this.iSavedFields; 
     this.iSavedFieldsCount = DateTimeParserBucket.this.iSavedFieldsCount; 
    } <-- Stack trace says NPE is thrown here 

這是堆棧跟蹤:

... 
Caused by: java.lang.NullPointerException 
    at org.joda.time.format.DateTimeParserBucket$SavedState.<init>(DateTimeParserBucket.java:521) ~[joda-time-2.9.5.jar:2.9.5] 
... 

回答

5

的唯一原因(除非事情都是很破),它會指向一個支柱是當源和正在運行的代碼不同步。清理,重新運行並再次查看堆棧跟蹤。

在這種情況下,由於stacktrace來自joda-time內部,因此您可能正在查看庫的錯誤版本的來源。確保你正在查看2.9.5版本的源代碼。

+1

或者可能存在一些生成的代碼,例如使用龍目島時。 – actc

相關問題