idea中设置java虚拟机编译java类时不清除方法的参数名


一、前言

我们在通过反射来获取方法的真实参数名时,默认是获取不到的,这是因为,java虚拟机在编译java文件时,默认会清除参数名。不过我们可以通过 idea 来手动修改这一规则。

二、解决方案

  • 首先点击 Settings —> Build,Execution,Deployment —> Compiler —> Java Compiler

  • 然后找到 Additional command line parameters,在里面添加以下参数:

-parameters
  • 具体可按照下所所示来进行设置
    在这里插入图片描述
    设置完成后,重启idea即可生效

三、这样设置的好处和坏处

  • 好处是我们可以通过反射来动态的获取到方法中的真实的方法形参名,这在 Spring 底层也有体现
  • 坏处是会增大编译后的.class文件的体积

四、最后的话

希望这篇文章对大家有所帮助,如果对你有帮助,请不要忘了点赞加关注。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐