首页 > 解决方案 > checkstyle 自定义检查错误 无法实例化 com.mycompany.checks.MethodLimitCheck

问题描述

我正在尝试使用基于https://checkstyle.org/writingchecks.html的 checkstyle-8.38-all.jar 进行基本的自定义检查。有人有这个自定义检查的工作示例吗?我将 mycompany-checkstyle-checks-1.0.jar 和 checkstyle-8.38-all.jar 添加到 java 类路径中仍然没有运气。

我不断收到此错误

java -classpath mycompany-checkstyle-checks-1.0.jar;checkstyle-8.38-all.jar com.puppycrawl.tools.checkstyle.Main -c checkstyle.xml src/
com.puppycrawl.tools.checkstyle.api.CheckstyleException: cannot initialize module TreeWalker - cannot initialize module com.mycompany.checks.MethodLimitCheck - Unable to instantiate com.mycompany.checks.MethodLimitCheck
        at com.puppycrawl.tools.checkstyle.Checker.setupChild(Checker.java:482)
        at com.puppycrawl.tools.checkstyle.api.AutomaticBean.configure(AutomaticBean.java:201)
        at com.puppycrawl.tools.checkstyle.Main.runCheckstyle(Main.java:404)
        at com.puppycrawl.tools.checkstyle.Main.runCli(Main.java:331)
        at com.puppycrawl.tools.checkstyle.Main.execute(Main.java:190)
        at com.puppycrawl.tools.checkstyle.Main.main(Main.java:125)
Caused by: com.puppycrawl.tools.checkstyle.api.CheckstyleException: cannot initialize module com.mycompany.checks.MethodLimitCheck - Unable to instantiate com.mycompany.checks.MethodLimitCheck
        at com.puppycrawl.tools.checkstyle.TreeWalker.setupChild(TreeWalker.java:125)
        at com.puppycrawl.tools.checkstyle.api.AutomaticBean.configure(AutomaticBean.java:201)
        at com.puppycrawl.tools.checkstyle.Checker.setupChild(Checker.java:477)
        ... 5 more
Caused by: com.puppycrawl.tools.checkstyle.api.CheckstyleException: Unable to instantiate com.mycompany.checks.MethodLimitCheck
        at com.puppycrawl.tools.checkstyle.PackageObjectFactory.createObject(PackageObjectFactory.java:370)
        at com.puppycrawl.tools.checkstyle.PackageObjectFactory.createModule(PackageObjectFactory.java:198)
        at com.puppycrawl.tools.checkstyle.TreeWalker.setupChild(TreeWalker.java:116)
        ... 7 more
Caused by: java.lang.InstantiationException
        at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance(InstantiationExceptionConstructorAccessorImpl.java:48)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at com.puppycrawl.tools.checkstyle.PackageObjectFactory.createObject(PackageObjectFactory.java:367)
        ... 9 more
Checkstyle ends with 1 errors.

标签: javastatic-analysis

解决方案


推荐阅读