Gradle 5.5.1集成Checkstyle插件报错:无法实例化InvalidJavadocPosition类
解决Checkstyle
InvalidJavadocPosition 无法实例化的问题 核心原因:Checkstyle版本不匹配
InvalidJavadocPosition 这个检查规则是在Checkstyle 8.22版本才正式引入的,你当前配置的toolVersion '8.21'仍然低于这个版本,自然会出现无法实例化类的异常。
具体解决方案
1. 升级Checkstyle到8.22及以上版本
修改你的Gradle配置,将Checkstyle工具版本升级到至少8.22(也可以选择更稳定的高版本,比如8.45.1):
checkstyle { toolVersion '8.22' }
2. 验证版本是否生效
执行以下命令确认实际使用的Checkstyle版本,确保配置已经生效:
./gradlew checkstyleVersion
输出应该显示你指定的8.22或更高版本,而不是Gradle默认的8.17。
3. 确保配置文件与版本兼容
如果你使用的是自定义的sun_checks.xml,要保证它和当前Checkstyle版本匹配:
- 避免使用从更高版本Checkstyle中复制的配置文件,不同版本的内置规则可能有变动
- 若无需自定义,可直接使用当前Checkstyle版本自带的
sun_checks.xml,无需手动引入
额外排查点
如果升级后仍报错,检查以下内容:
- 确认
sun_checks.xml中规则名称拼写正确,该规则的完整类名为com.puppycrawl.tools.checkstyle.checks.javadoc.InvalidJavadocPosition - 清理Gradle缓存后重新运行,执行
./gradlew cleanBuildCache再尝试check任务
内容的提问来源于stack exchange,提问作者lapots
相关产品推荐
相关产品推荐

