写点什么

Hibernate 元数据模型(MetaModel)提示类没有找到错误

作者:HoneyMoose
  • 2022 年 7 月 13 日
  • 本文字数:946 字

    阅读完需:约 3 分钟

在进行一次编译的时候,提示下面的错误信息:

java: java.lang.ClassNotFoundException: org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor

 


问题和解决

如果你对 Hibernate 的元数据还是不非常了解的话,请参考文章: JPA 的 Metamodel 中的内容。

有关元数据生成器中的内容,请参看官方的:JPA Static Metamodel Generator

这里有几种使用方法:

我们使用了第一种的 Maven 配置方法:

<plugin>    <artifactId>maven-compiler-plugin</artifactId>    <configuration>        <source>1.8</source>        <target>1.8</target>        <compilerArguments>            <processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor>        </compilerArguments>    </configuration></plugin>
复制代码

 


在我们的项目中和 lombok 的插件编译方法冲突了。

 


需要将上面的配置方法通过 annotationProcessorPaths 来进行配置。

修改后的配置如下:

            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-compiler-plugin</artifactId>                <version>${maven-compiler-plugin.version}</version>                <configuration>                    <release>${java.version}</release>                    <annotationProcessorPaths>                        <path>                            <groupId>org.hibernate</groupId>                            <artifactId>hibernate-jpamodelgen</artifactId>                            <version>5.4.33.Final</version>                        </path>                        <path>                            <groupId>org.projectlombok</groupId>                            <artifactId>lombok</artifactId>                            <version>1.18.24</version>                        </path>                    </annotationProcessorPaths>                </configuration>            </plugin>

复制代码

然后再次编译和运行项目,上面的错误就解决了。

 


通常官方文档需要认真参考下。

 

https://www.ossez.com/t/hibernate-metamodel/14038

用户头像

HoneyMoose

关注

还未添加个人签名 2021.03.06 加入

还未添加个人简介

评论

发布
暂无评论
Hibernate 元数据模型(MetaModel)提示类没有找到错误_HoneyMoose_InfoQ写作社区