【发布时间】:2018-02-09 23:25:55
【问题描述】:
Javac 提供以下非标准选项(来自“javac -X”命令行帮助):
-Xplugin:"name args" Name and optional arguments for a plug-in to be run
但是,Maven 不处理这种格式。例如,以下内容不起作用:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs>
<arg>-Xplugin:"Manifold static"</arg>
</compilerArgs>
</configuration>
</plugin>
我尝试了几种不同的变体,并尝试将空格替换为“=”,但仍然不行。有解决办法吗?
注意我在 Java 8 中使用Manifold javac 插件。复制很简单.. 创建一个依赖于多方面 jar 的 pom:
<dependency>
<groupId>systems.manifold</groupId>
<artifactId>manifold-all</artifactId>
<version>0.9-alpha</version>
</dependency>
您实际上并不需要任何来源,这只是为了证明 Maven 不会接受 -Xplugin:"Manifold static" javac 参数。
另请注意,Java 9 似乎已将 -Xplugin 的格式更改为不再需要引号。请参阅Java 9 docs。
【问题讨论】:
-
你有没有试图逃离这个空间?
-
@Andrey 哈哈,是的,这是我的项目,它现在处于 alpha 阶段。我不确定该测试依赖项在哪里或如何发挥作用。你能提供你的 pom 文件以便我重现吗?
-
您应该能够使用带有默认
-Xplugin:Manifoldjavac 参数的插件和基本 jar 文件依赖项:<dependency> <groupId>systems.manifold</groupId> <artifactId>manifold</artifactId> <version>0.9-alpha</version> </dependency> -
另外,您实际上并不需要在项目中“使用”该插件,只需尝试使用 Maven 编译它并查看有关
-Xplugin:"Manifold static"参数的错误。
标签: java maven javac javac-compiler-plugin