我的应用程序使用反射来提取特定方法的参数名称.
我需要这些名称,就像它们写在我的代码中一样(而不是arg0,arg1 ……).
为了达到这个目的,我去:
Windows – >偏好 – > Java – >编译器 – 并标记:“存储方法参数名称”.
(我在Eclipse Kepler中使用JDK1.8)
现在,当我做类似的事情:
method.getParameters()[0].getName()
如果我使用Debug Configuration = Java application – >运行我的应用程序它工作正常!
但是,如果我使用Debug Configuration = M2 Maven Build运行它 – >它不起作用!它显示了合成名称(arg0,arg1 ……)
我需要它通过Maven Build工作,任何想法?
解决方法:
尝试明确告诉编译器您希望保留方法参数名称:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-g:vars</compilerArgument>
<testCompilerArgument>-g:vars</testCompilerArgument>
</configuration>
</plugin>
标签:java,maven,eclipse,maven-3 来源: https://codeday.me/bug/20190830/1770385.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。