Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用M2 Maven build ignores运行Eclipse;“存储方法参数名称”;定义_Java_Eclipse_Maven_Maven 3 - Fatal编程技术网

Java 使用M2 Maven build ignores运行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-->运行我的应用

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

我需要的名称就像它们写在我的代码中一样(而不是arg0,arg1…)

为了实现这一点,我要: Windows->Preferences->Java->Compiler-并标记:“存储方法参数名”

(我将JDK1.8与Eclipse开普勒一起使用)

现在,当我做一些类似的事情时:

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中添加这个?你不会碰巧还有一个有效的解决方案吧?