I have a JHipster project in which I have added dependency for Lombok in build.gradle:
compile group: 'org.projectlombok', name: 'lombok', version: lombok_version
And I have the Lombok plugin stalled for IntelliJ. I've turned on annotation processing in IntelliJ, I can build without errors from the IntelliJ IDE, but when I try to build from the command line I get build errors. It seems like Gradle is not processing the annotations and can't find the getter/setter and log declarations. The project also runs without any kind of errors.
Command Line:
./gradlew build
Errors :
/Users/.../source/v4.0/src/main/java/com/.../service/MyService.java:145: error: cannot find symbol
log.info("Security Context: " + SecurityUtils.getCurrentUserLogin());
^
symbol: variable log
location: class MyService
Error:
/Users/.../source/v4.0/src/main/java/com/.../service/MyService.java:105: error: cannot find symbol
myClass.setDescription(description);
^
symbol: method setDescription(String)
location: variable myClass of type MyClass
Service Class:
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@Slf4j
public class MyService {
public void someMethod(){
log.debug("Security Context: " + SecurityUtils.getCurrentUserLogin());
MyClass myCLass = new MyClass();
myClass.setDescription(description);
}
}
Entity Class:
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import javax.persistence.Entity;
import javax.persistence.Table;
@Entity
@Table(name="t_juror_file_update")
@Getter
@Setter
@NoArgsConstructor
public class MyClass {
private String description;
}
I've been trying to figure this out for hours, but totally stuck. Any help would be appreciated.
You will need to specify lombok
as an annotation processor. To do this, You will need to add following to build.gradle
in a Jhipster
project.
apply plugin: 'net.ltgt.apt'
dependencies {
provided "org.projectlombok:lombok:$lombokVersion"
apt "org.projectlombok:lombok:$lombokVersion"
/** ... */
}
Jhipster
uses net.ltgt.gradle:gradle-apt-plugin
for annotation processing.
For IntelliJ
setup, Enable annotation Processing
should be checked.
More Info: Project Lombok - android instructions