Java 将本地注释处理器项目集成到gradle构建中
我一直在使用Netbeans及其默认的基于ant的构建集成开发一个java项目。由于ant的不足,我计划切换到基于渐变的构建 问题在于,该项目分为三个不同的模块:Java 将本地注释处理器项目集成到gradle构建中,java,gradle,netbeans,annotations,annotation-processing,Java,Gradle,Netbeans,Annotations,Annotation Processing,我一直在使用Netbeans及其默认的基于ant的构建集成开发一个java项目。由于ant的不足,我计划切换到基于渐变的构建 问题在于,该项目分为三个不同的模块: 注释模块(包含多个注释处理器) 数据库模块 用户界面模块 UI模块和数据库模块使用annotations模块中的annotations处理器。UI模块依赖于数据库模块 我尝试的生成设置如下所示: if (!hasProperty('mainClass')) { ext.mainClass = '' } apply plu
- 注释模块(包含多个注释处理器)
- 数据库模块
- 用户界面模块
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构建过程没有生成应该由注释处理器生成的类。此外,我还尝试了annotations模块的预编译版本,但这也不起作用
我的问题是:
- 如何集成annotations模块以便gradle构建工作
- 如何将注释模块动态集成到构建过程中李>
- 通常您会使用
此解决方案适用于动态集成注释模块,但构建不会创建注释类。是否有一个选项可以指定在annotations模块中实现的不同处理器,以便gradle构建可以识别它们。现在您知道如何从另一个模块访问
,我想您需要查看以使用它您的处理器是否有ServiceLoader发现的服务声明?如果没有,您应该添加它们。annotations.jar
dependencies { compile fileTree(dir: 'lib', include: ['*.jar']) apt project(':annotations') compileOnly project(':annotations') }