Java 使用M2 Maven build ignores运行Eclipse;“存储方法参数名称”;定义
我的应用程序使用反射来提取特定方法的参数名称 我需要的名称就像它们写在我的代码中一样(而不是arg0,arg1…) 为了实现这一点,我要: Windows->Preferences->Java->Compiler-并标记:“存储方法参数名” (我将JDK1.8与Eclipse开普勒一起使用) 现在,当我做一些类似的事情时:Java 使用M2 Maven build ignores运行Eclipse;“存储方法参数名称”;定义,java,eclipse,maven,maven-3,Java,Eclipse,Maven,Maven 3,我的应用程序使用反射来提取特定方法的参数名称 我需要的名称就像它们写在我的代码中一样(而不是arg0,arg1…) 为了实现这一点,我要: Windows->Preferences->Java->Compiler-并标记:“存储方法参数名” (我将JDK1.8与Eclipse开普勒一起使用) 现在,当我做一些类似的事情时: method.getParameters()[0].getName() 如果我用Debug Configuration=Java application-->运行我的应用
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>
org.apache.maven.plugins
maven编译器插件
3.1
1.8
1.8
-g:vars
-g:vars
oopss,我很高兴早点。。。我第一次尝试它,它成功了,但当我再次尝试时,它没有成功!!非常非常奇怪!找到了解决方案:-parameters-parameters谢谢分享,我完全忘了testsDid有一个单独的param字符串。你是在父项还是子项pom中添加这个?你不会碰巧还有一个有效的解决方案吧?