如何通过-J";通过Maven选择javac?

如何通过-J";通过Maven选择javac?,java,maven,javac,maven-compiler-plugin,Java,Maven,Javac,Maven Compiler Plugin,我有一个使用Maven构建的Java项目。我想向“javac”命令行添加选项——特别是,我想传递一些“-J”选项 所以通常我会这样做: <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <compil

我有一个使用Maven构建的Java项目。我想向“javac”命令行添加选项——特别是,我想传递一些“-J”选项

所以通常我会这样做:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <compilerArgument>-J-Xdebug</compilerArgument>
        <compilerArgument>-J-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005</compilerArgument>
    </configuration>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.0</version>
    <configuration>
      <verbose>true</verbose>
      <fork>true</fork>
      <executable><!-- path-to-javac-invoking-script --></executable>
      <compilerVersion>1.3</compilerVersion>
    </configuration>
  </plugin>

org.apache.maven.plugins
:

@argfiles 列出选项和源文件的一个或多个文件。这些文件中不允许使用-J选项

所以看起来maven编译器插件中的选项不起作用了——它想要使用arg文件,arg文件不能包含我想要的选项

我也看到了一些使用地图的建议,但是当我尝试它时,也得到了类似的结果


还有其他选择吗?

编译器插件允许您选择,因此您可以使用如下内容:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <compilerArgument>-J-Xdebug</compilerArgument>
        <compilerArgument>-J-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005</compilerArgument>
    </configuration>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.0</version>
    <configuration>
      <verbose>true</verbose>
      <fork>true</fork>
      <executable><!-- path-to-javac-invoking-script --></executable>
      <compilerVersion>1.3</compilerVersion>
    </configuration>
  </plugin>

org.apache.maven.plugins

已在编译器插件2.4+中修复,如果没有我的解决方法,现在应该可以正常工作了

看起来您遇到了一个已知问题-我可以确认它可以正常工作。。。不过,这肯定是一个解决办法,但除了在上游修复bug并等待新版本的插件外,这将起作用:)@RichardDowner-你没有要求漂亮;-)