NO.1 Integer转int异常
public foo(int i);
Integer i = null;
foo(i);
这种情况下会报空指针异常
解决方法:foo(ObjectUtils.defaultIfNull(iac.getLevel(), 1));
NO.2 Tomcat运行行电脑异常死机,重启之后就无法启动.确定代码没有问题,但RUN的时候就是报一个跟fastjson(version too low)syntax error相关的问题.
解决方法:在异常的地方设置断点,发现某个包试图要将一个很怪的字符串(“)解析成JSON,原来这个包在运行时在C:\Users\XXX.rocketmq_offsets路径下保存了文件.因为电脑死机导致这些文件不完整,而程序仍然试图去读这些文件,导致错误.删除这些文件后程序正常跑起来了.
感叹: 遇到这样的非编译问题,作为菜鸟的笔者真是不知所措.搞了大半天也没弄好.最后请来师兄,师兄通过断点与堆栈很快就定位了问题.真得好好学习使用断点和堆栈解决问题.