Java Intellij Structural Search:如何查找空的try-catch块?
如何找到空的try-catch块 正在使用复制现有模板。。。我找到了try catch的结构搜索:Java Intellij Structural Search:如何查找空的try-catch块?,java,intellij-idea,intellij-14,structural-search,Java,Intellij Idea,Intellij 14,Structural Search,如何找到空的try-catch块 正在使用复制现有模板。。。我找到了try catch的结构搜索: try { $TryStatement$; } catch($ExceptionType$ $Exception$) { $CatchStatement$; } 我想增强它,使它只找到带有空catch块的try catch 它应该发现: try { assertTrue(output.validate()); } catch (Exception e) {
try {
$TryStatement$;
} catch($ExceptionType$ $Exception$) {
$CatchStatement$;
}
我想增强它,使它只找到带有空catch块的try catch
它应该发现:
try {
assertTrue(output.validate());
} catch (Exception e) {
//TODO something
}
或
或
但不是:
try {
assertTrue(output.validate());
} catch (Exception e) {
e.printStackTrace();
}
现在很明显,两者都有,因为两者之间没有区别。
如何添加此额外检查?使用您找到的模板,并在CatchStatement变量上将最小计数和最大计数设置为0。不使用结构搜索,您还可以执行以下操作:按名称分析/运行检查/Empty'catch'Blockthx,但它不会使用commentar找到空的catch,与第一个示例类似。空的“catch”块检查有一个选项,可以将注释计数为可禁用的内容。
try {
assertTrue(output.validate());
} catch (Exception e) {}
try {
assertTrue(output.validate());
} catch (Exception e) {
e.printStackTrace();
}