编程语言
首页 > 编程语言> > java – 使用M2 Maven构建运行Eclipse忽略“存储方法参数名称”定义

java – 使用M2 Maven构建运行Eclipse忽略“存储方法参数名称”定义

作者:互联网

我的应用程序使用反射来提取特定方法的参数名称.

我需要这些名称,就像它们写在我的代码中一样(而不是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