首页 > 解决方案 > 如何在 IntelliJ IDEA 中生成 JPA Hibernate Metamodel 类?

问题描述

我正在尝试在 IntelliJ 想法中使用 Hibernate 生成元模型类。我已经看过最古老的教程,但它们对我没有帮助。还有其他方法可以生成该文件吗?我在 IntelliJ 中发现的有关 Metamodel 支持的主题太老了。也许我做错了什么。我会解释我在做什么。

我已经尝试过:

我在 pom.xml 中包含的插件:

<plugin>
                <groupId>org.bsc.maven</groupId>
                <artifactId>maven-processor-plugin</artifactId>
                <version>1.3.5</version>
                <executions>
                    <execution>
                        <id>process</id>
                        <goals>
                            <goal>process</goal>
                        </goals>
                        <phase>generate-sources</phase>
                        <configuration>
                            <outputDirectory>${project.build.directory}/generated-sources/metamodel</outputDirectory>
                            <compilerArguments>
                                -Aeclipselink.persistencexml=${project.basedir}/src/main/resources/META-INF/persistence.xml
                            </compilerArguments>
                            <processors>
                                <processor>org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor
                                </processor>
                            </processors>
                        </configuration>
                    </execution>
                </executions>
</plugin>

标签: javahibernateintellij-idea

解决方案


将以下依赖项放入项目的 pom.xml 中。

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-jpamodelgen -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-jpamodelgen</artifactId>
        <version>5.3.7.Final</version>
        <scope>provided</scope>

    </dependency>

然后使用..path_to_root_directory_of_module_of_entities/target/classes/模块/项目的构建路径上的目录。它将使所有自动生成的静态模型类对项目的运行时可用。


推荐阅读