无法初始化模块TreeWalker - 无法实例化SuppressWarningsHolder

时间:2014-07-29 06:16:39

标签: maven checkstyle

我配置了maven-checkstyle-plugin(v2.5)和maven-eclipse-plugin(v2.8)。

一切按预期工作,但我一介绍,

模块名称=“SuppressWarningsHolder” 和/或 模块名称=“SuppressWarningsFilter”

我的checkstyle -config.xml,我开始在构建项目时遇到问题。

这是我得到的:

[ERROR] BUILD ERROR
1>  [INFO] ------------------------------------------------------------------------
1>  [INFO] Failed during checkstyle configuration
1>  
1>EXEC : Embedded error : cannot initialize module TreeWalker - Unable to instantiate SuppressWarningsHolder
1>  Unable to instantiate SuppressWarningsHolderCheck

如果我删除SuppressWarningsHolderCheck,我会收到SuppressWarningsFilter的相同错误。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:8)

看来你有两个问题:

  • 您使用的是maven-checkstyle-plugin v2.5,它基于Checkstyle 5.0。在Checkstyle 5.0中,SuppressWarningsHolderCheck和SuppressWarningsFilter尚未存在,因为它们是在5.7中引入的。所以你必须先升级你的maven-checkstyle-plugin。
  • SuppressWarningsFilter必须直接在Checker下配置,而不是TreeWalker下。尽管文档存在,但文档并没有使这一部分非常明确。请注意,SuppressWarnings 持有人 确实位于TreeWalker下。

如果你做了两件事,那么东西应该有可能开始工作。