Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么stacktrace会指向Java中的右大括号?_Java_Debugging - Fatal编程技术网

为什么stacktrace会指向Java中的右大括号?

为什么stacktrace会指向Java中的右大括号?,java,debugging,Java,Debugging,如果在Java中的右大括号上出现NullPointerException,这意味着什么?比如说,对: SavedState(){ this.iZone=DateTimeParserBucket.this.iZone; this.iOffset=DateTimeParserBucket.this.iOffset; this.iSavedFields=DateTimeParserBucket.this.iSavedFields; this.isavedfieldscont=DateTimeParse

如果在Java中的右大括号上出现
NullPointerException
,这意味着什么?比如说,对:

SavedState(){
this.iZone=DateTimeParserBucket.this.iZone;
this.iOffset=DateTimeParserBucket.this.iOffset;
this.iSavedFields=DateTimeParserBucket.this.iSavedFields;
this.isavedfieldscont=DateTimeParserBucket.this.isavedfieldscont;
}如果源代码和正在运行的代码不同步,则它会指向大括号的唯一原因(除非事情非常糟糕)。清理、重新运行并再次查看堆栈跟踪

在本例中,由于stacktrace来自joda time内部,因此您可能正在查找库的错误版本的源代码。确保您正在查看版本
2.9.5

的源代码。它指向大括号的唯一原因是源代码和正在运行的代码不同步。清理、重新运行并再次查看堆栈跟踪


在本例中,由于stacktrace来自joda time内部,因此您可能正在查找库的错误版本的源代码。确保您正在查看版本
2.9.5

的源代码,或者可能涉及到一些生成的代码,例如在使用Lombok时。或者可能涉及到一些生成的代码,例如在使用Lombok时。
    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]
...