Dmi*_*kiy 14 java maven-plugin maven java-9 maven-checkstyle-plugin
将module-info.java文件添加到我的项目后,我的checkstyle插件开始失败:
[错误]无法执行目标org.apache.maven.plugins:maven-checkstyle-plugin:2.17:检查(default-cli)项目电子邮件:在checkstyle配置期间失败:在分析文件/ home/xxx /期间发生NoViableAltException IdeaProjects/blynk服务器/服务器/通知/电子邮件/ src目录/主/ JAVA/module-info.java.意外令牌:模块 - > [帮助1]
我试过了
<module name="BeforeExecutionExclusionFileFilter">
<property name="fileNamePattern" value="module\-info\.java$"/>
</module>
Run Code Online (Sandbox Code Playgroud)
然而,它失败了:
[错误]无法执行目标org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check(default-cli)on project blynk:checkstyle配置失败:无法初始化模块BeforeExecutionExclusionFileFilter - 无法实例化'BeforeExecutionExclusionFileFilter'类,也无法将其实例化为com.puppycrawl.tools.checkstyle.checks.annotation.BeforeExecutionExclusionFileFilter
module-info.java在checkstyle期间为maven-checkstyle-plugin 跳过文件的正确方法是什么?
man*_*uti 14
不确定为什么Checkstyle过滤器不起作用(这个报告的bug看起来与你的非常相似,它在7.3.0版本中得到修复,所以你可能需要更新Checkstyle).
无论如何,Maven excludes元素也应该这样做:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<excludes>**/module-info.java</excludes>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
更多插件目标文档.
BeforeExecutionExclusionFileFilter 是在Checkstyle 7.2中添加的。
但是maven-checkstyle-plugin默认情况下,版本3.0.0(截至2018-04-01的最新版本)使用Checkstyle 6.18。
“ Checkstyle”和“ Checkstyle Maven插件”是不同的东西,并且具有不同的发布周期。
您可能要升级Checkstyle版本,如下所示:
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version> <!-- Checkstyle Plugin version -->
<!-- ... Configuration, Executions ... -->
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>8.8</version> <!-- Checkstyle version -->
</dependency>
</dependencies>
</plugin>
Run Code Online (Sandbox Code Playgroud)
之后,BeforeExecutionExclusionFileFilter将识别其他较新的Checkstyle功能(例如,新的支票)。
| 归档时间: |
|
| 查看次数: |
1822 次 |
| 最近记录: |