如何检查 类 是否有 @CompileStatic 注解?
How to check classes have @CompileStatic annotation?
我想对我的 Groovy 代码执行自动静态检查分析,以确定哪些类没有 @CompileStatic
注释。
我想知道如何使用 IntelliJ 或 CodeNarc 自定义规则来完成。
可以使用 IntelliJ IDEA 的结构搜索(编辑 | 查找 | 结构搜索...)及其结构搜索检查来达到此目的。使用像这样的简单模式:
class $X$ {}
文件类型 Groovy
,上下文 File
。并添加如下脚本约束(单击 Edit Variables...
添加约束):
com.intellij.codeInsight.AnnotationUtil.findAnnotation(X.parent, "groovy.transform.CompileStatic") == null
这应该找到所有 类 没有 @CompileStatic
注释的
为了完整起见,Codenarc 自 1.4
以来有 CompileStatic Rule
CompileStatic Rule
Since CodeNarc 1.4
Enforces classes are annotated either with one of the @CompileStatic, >@GrailsCompileStatic or @CompileDynamic annotations.
我想对我的 Groovy 代码执行自动静态检查分析,以确定哪些类没有 @CompileStatic
注释。
我想知道如何使用 IntelliJ 或 CodeNarc 自定义规则来完成。
可以使用 IntelliJ IDEA 的结构搜索(编辑 | 查找 | 结构搜索...)及其结构搜索检查来达到此目的。使用像这样的简单模式:
class $X$ {}
文件类型 Groovy
,上下文 File
。并添加如下脚本约束(单击 Edit Variables...
添加约束):
com.intellij.codeInsight.AnnotationUtil.findAnnotation(X.parent, "groovy.transform.CompileStatic") == null
这应该找到所有 类 没有 @CompileStatic
注释的
为了完整起见,Codenarc 自 1.4
以来有 CompileStatic RuleCompileStatic Rule
Since CodeNarc 1.4
Enforces classes are annotated either with one of the @CompileStatic, >@GrailsCompileStatic or @CompileDynamic annotations.