There is no getter for property named ‘pCode‘ in ‘classXXX‘

时间:2024-03-29 15:38:46

说明

使用easypoi导入模板数据,总提示“There is no getter for property named ‘pCode’ in ‘classXXX’”。排查方向大致如下:
1.如果是mybatis报错,那么检查是否拼写错误!这个很多人犯错。
2.如果是lombok注解,然后变量名是pCode这种,getter和setter方法都是转为setpCode(),getpCode()!!!前面的字母是小写的!!!但是easypoi里面是PCode(P大写)
3.知道是问题2后,修改了成员变量名后,有使用热部署更新的,请重启系统,不要用热部署更新该实体类。

我的就是2和3这种情况。使用jrebel热部署后,easypoi的
cn.afterturn.easypoi.util.PoiReflectorUtil#getSetMethod该方法还是存储旧的成员变量名,所以重启系统就可以了。

调试情况如下:
There is no getter for property named ‘pCode‘ in ‘classXXX‘