Eclipse、IDEA切换设置编译选项,解决反射带来的空指针问题

时间:2024-05-21 18:38:49

背景:最近接手一个项目,项目中使用反射技术,导致在Eclipse中可以完美运行的程序在IDEA中一直空指针,报错un support type:com.xx.xx,导致很长一段时间不能切换到IDEA集成开发环境中。后来才知,是编译时参数选择原因导致。

 

我们在Eclipse中设置编译选项:Window->perferences->java->Compiler中勾选Store information about method parameters (usable via reflection)。勾选之后,可以在编译时java程序保留原函数形参的名字不被替换掉。否则会被替换成arg0等。

 

Eclipse、IDEA切换设置编译选项,解决反射带来的空指针问题

 

此时切换到IDEA中,我们如果在编译中不进行设置,就会导致参数编程arg0,进而反射使用过程中无法匹配,最终报空指针异常。此时我们应该在Java Compiler中添加参数-parameters,此时就可以完美解决问题。

 

Eclipse、IDEA切换设置编译选项,解决反射带来的空指针问题

 

此时我们就可以完美切换到IDEA中啦^_^啦啦啦~