2015-08-04 23 views
7

JPAMetaModelEntityProcessor ek açıklama işlemcisi maven yapısında etkinleştirildiğinde Lombok nasıl kullanılır.Maven ile birlikte leksok ve JPAMetalModel işlemcileri

Maven yapılandırma: Derleme işlemi sırasında

[...] 
<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
       <compilerArguments> 
        <processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor> 
       </compilerArguments> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
<dependencies> 
    <dependency> 
     <groupId>org.projectlombok</groupId> 
     <artifactId>lombok</artifactId> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate.javax.persistence</groupId> 
     <artifactId>hibernate-jpa-2.0-api</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-jpamodelgen</artifactId> 
     <scope>provided</scope> 
    </dependency> 
</dependencies> 
[...] 

(mvn temiz kurulum), metamodel nesneleri doğru bir şekilde oluşturulur ancak Lombok Ek Açıklama işlemci artık Javac derleme içine eklenmez görünüyor. Tüm @Getter, @Setter, ... çalışmıyor.

+0

? Bildiğim kadarıyla Lombok, Java 8 ile çalışmak konusunda problem yaşıyor. –

cevap

12

Lombok projesine bir göz attıktan sonra bir çözüm buldum.

JPAMetaModelEntityProcessor öğesini javac ek açıklama işlemci olarak belirtirken, lombok işlemcisi kaldırılmış gibi görünüyor. Bunu düzeltmek için

, biz sadece maven-derleyici-eklentisinde Lombok açıklama işlemci ekleyebilirsiniz: Kullandığınız hangi Java sürümünü

[...] 
<plugin> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <configuration> 
     <compilerArguments> 
      <processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor,lombok.launch.AnnotationProcessorHider$AnnotationProcessor</processor> 
     </compilerArguments> 
    </configuration> 
</plugin> 
[...] 
İlgili konular