将本地注释处理器项目集成到gradle构建中

时间:2017-07-18 12:40:03

标签: java gradle netbeans annotations annotation-processing

我一直在使用Netbeans及其默认的基于ant的构建集成的java项目。由于ant的不足,我计划改用基于gradle的构建。

问题在于项目分为三个不同的模块:

  • 注释模块(包含多个注释处理器)
  • 数据库模块
  • UI模块

UI模块和数据库模块使用注释模块中的注释处理器。 UI模块依赖于数据库模块。

我尝试的构建设置如下所示:

if (!hasProperty('mainClass')) {
    ext.mainClass = ''
}

apply plugin: "net.ltgt.apt"

dependencies {
  compile fileTree(dir: 'lib', include: ['*.jar'])

  apt files('processor/Annotations.jar')
  compileOnly files('processor/Annotations.jar')
}

我尝试动态集成模块,但是gradle构建过程没有生成应该由注释处理器生成的类。此外,我已经尝试了预编译版本的注释模块,但这也无效。

我的问题:

  • 如何集成注释模块以使gradle构建有效?
  • 如何将注释模块动态集成到构建过程中?

1 个答案:

答案 0 :(得分:0)

通常您使用project dependency

dependencies {
    compile fileTree(dir: 'lib', include: ['*.jar'])
    apt project(':annotations')
    compileOnly project(':annotations')
}