我正在尝试编写自定义检查并从 Eclipse 中使用它。
我为此编写了一个 MethodLimitCheck.java 和一个 myChecker.xml 文件。
java文件:MethodLimitCheck.java
package myCheck;
import com.puppycrawl.tools.checkstyle.api.*;
public class MethodLimitCheck extends Check
{
private static final int DEFAULT_MAX = 10;
private int max = DEFAULT_MAX;
public void setMax(int limit)
{
max = limit;
}
@Override
public int[] getDefaultTokens()
{
return new int[]{TokenTypes.CLASS_DEF, TokenTypes.INTERFACE_DEF};
}
@Override
public void visitToken(DetailAST ast)
{
DetailAST objBlock = ast.findFirstToken(TokenTypes.OBJBLOCK);
int methodDefs = objBlock.getChildCount(TokenTypes.METHOD_DEF);
if (methodDefs > this.max)
{
log(ast.getLineNo(),
"too many methods, only " + this.max + " are allowed");
}
}
}
和 xml 文件:myChecker.xml
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
<module name="Checker">
<module name="TreeWalker">
<module name="myCheckStyle.MethodLimitCheck">
<property name="max" value="5" />
</module>
</module>
</module>
如何在 Eclipse 中使用此检查?
我从CheckStyle 站点中获取了这个示例。但是如何在 Eclipse 中使用它呢?
我需要在 eclipse 中获得警告,就像我使用可用检查并形成自定义配置时一样,可以从project->property->checkStyle
.
我是这个工具的新手,所以如果我缺少一些基本的东西,请纠正我。