With the example it won't directly work, as the lombok example disables standard annotation processing, which is required by Hibernate modelgen: https://github.com/ivy-lmu/IvyLombokExample/blob/master/IvyLombokExample/pom.xml#L29
However, instead of the promoted
-proc:noneflag, you could also use an explicit whiteliste of annotation processors to use. See the valid JDT options:
Annotation processing options:
These options are meaningful only in a 1.6 environment.
-Akey[=value] options that are passed to annotation processors
-processorpath <directories and ZIP archives separated by :>
specify locations where to find annotation processors.
If this option is not used, the classpath will be
searched for processors
qualified names of the annotation processors to run.
This bypasses the default annotation discovery process
-proc:only run annotation processors, but do not compile
-proc:none perform compilation but do not run annotation
-s <dir> destination directory for generated source files
-XprintProcessorInfo print information about which annotations and elements
a processor is asked to process
-XprintRounds print information about annotation processing rounds
qualified names of binary classes to process
So I'd identify the Modelgen annotation processor, by just using this library and printing the processesor info via
-XprintProcessorInfo. Once you see these classes; white list them via
-processor classNames option. Which should therefore bypass other annotation processors, such as lombok.