如果你NullPointerException在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
Run Code Online (Sandbox Code Playgroud)
这是在堆栈跟踪中:
...
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]
...
Run Code Online (Sandbox Code Playgroud)
唯一的原因(除非事情非常破坏),如果源和正在运行的代码不同步,它将指向一个大括号.清理,重新运行并再次查看堆栈跟踪.
在这种情况下,由于堆栈跟踪来自joda-time,你可能正在查看错误版本库的源代码.确保您正在查看版本的来源2.9.5.