gpt4 book ai didi

java - 如何将 lombok 和 JPAMetalModel 处理器与 maven 合并

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:30:19 25 4
gpt4 key购买 nike

如何使用Lombok当 JPAMetaModelEntityProcessor 注解处理器在 Maven 构建中被激活时。

Maven 配置:

[...]
<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 clean install)期间,MetaModel 对象被正确生成,但 Lombok Annotation 处理器似乎不再添加到 Javac 编译中。所有@Getter、@Setter、...都不起作用。

最佳答案

查看 lombok 项目后,我找到了解决方案。

当将 JPAMetaModelEntityProcessor 指定为 javac 注释处理器时,lombok 处理器似乎被移除了。

要纠正这个问题,我们可以简单地在 maven-compiler-plugin 中添加 Lombok 注解处理器:

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

关于java - 如何将 lombok 和 JPAMetalModel 处理器与 maven 合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31805327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com