【问题标题】:How add the @CompileStatic annotation to package scope in groovy如何在 groovy 中将 @CompileStatic 注释添加到包范围
【发布时间】:2018-02-24 01:13:52
【问题描述】:

我想在 groovy 中为整个包强制执行静态链接。静态链接需要use of CompileStatic。我想避免在每节课上都重复这一点。我如何将其作为包级注释应用。我在 groovy 中没有发现对包级注释的引用。

您能否提供一段代码,说明如何将注释应用于包a.b.c

【问题讨论】:

  • 您是否阅读过任何可以将上述注释应用于包的地方?因此发布了这个问题?

标签: groovy packages typechecking java-annotations


【解决方案1】:

这是未经测试的,但我认为应该可以创建 configurationScript、Source 感知定制器和 dsl 文档中解释的 AST 转换定制器的完美组合。

类似:

withConfig(configuration) {
    source(unitValidator: { unit -> unit.AST.classes.any { it.packageName== 'a.b.c' } }) {
        ast(CompileStatic) 
    }
}

【讨论】:

  • 哈哈,测试了一下,效果不错! :) 当然,使用 packageName.startsWith('a.b.c') 来包含子包。
猜你喜欢
  • 2013-03-03
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-27
相关资源
最近更新 更多