'javadoc generation failed using Spring Auto Rest Docs and lombok
I am using Spring Auto RestDocs and lombok. The gradle configuration looks like this:
dependencies {
jsondoclet 'capital.scalable:spring-auto-restdocs-json-doclet-jdk9:2.0.11'
annotationProcessor 'org.projectlombok:lombok:1.18.22'
...
}
task jsonDoclet(type: Javadoc, dependsOn: compileJava) {
source = sourceSets.main.allJava
classpath = sourceSets.main.compileClasspath
destinationDir = file("$buildDir/generated-javadoc-json")
options.docletpath = configurations.jsondoclet.files.asType(List)
options.doclet = 'capital.scalable.restdocs.jsondoclet.ExtractDocumentationAsJsonDoclet'
options.memberLevel = JavadocMemberLevel.PACKAGE
}
All was working fine until I added an annotation which uses class Fields generated by lombok's @FieldNameConstants:
@Entity
@Table(name = "transaction")
public class Transaction {
@OneToMany(mappedBy = "transaction", fetch = FetchType.LAZY)
@OrderBy(TransactionStatus.Fields.date) <---
private List<TransactionStatus> statuses = new ArrayList<>();
Now, when building the project, I am getting the following error during jsonDoclet task:
error: cannot find symbol
@OrderBy(TransactionStatus.Fields.transaction)
^
symbol: variable Fields
location: class TransactionStatus
Since I configured jsonDoclet to depend on compileJava I was expecting it to find the class, but it doesn't. How can I avoid this error?
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
