Хотя у меня нет проблем с использованием грейдеров из Ant, я согласен с оригинальным постером, что в этом случае это нежелательно. Я нашел проект github Тома Андерсона здесь , который описывает, как мне кажется, лучший подход. Я изменил его немного, чтобы он соответствовал моим потребностям (вывод в src / main / generate), чтобы он выглядел так:
sourceSets {
generated
}
sourceSets.generated.java.srcDirs = ['src/main/generated']
configurations {
querydslapt
}
dependencies {
compile 'mine go here'
querydslapt 'com.mysema.querydsl:querydsl-apt:2.7.1'
}
task generateQueryDSL(type: Compile, group: 'build', description: 'Generates the QueryDSL query types') {
source = sourceSets.main.java
classpath = configurations.compile + configurations.querydslapt
options.compilerArgs = [
"-proc:only",
"-processor", "com.mysema.query.apt.jpa.JPAAnnotationProcessor"
]
destinationDir = sourceSets.generated.java.srcDirs.iterator().next()
}
compileJava.dependsOn generateQueryDSL
Этот подход имеет для меня гораздо больше смысла, чем другой, если он подходит и вам, у вас есть еще один вариант генерации querydsl.