Hibernate Maven增强插件配置

时间:2014-05-13 04:02:41

标签: java hibernate maven instrumentation

HHH-8354中引入了Hibernate的新脏检查策略。我对使用(也是新的)maven compile time enhancement在我的项目中使用该改进感兴趣,但没有关于这些新功能的文档或解释。

据我所知,pom需要看起来像这样:

<plugins>  
    ....
    <plugin>
        <groupId>org.hibernate.orm.tooling</groupId>
        <artifactId>hibernate-enhance-maven-plugin</artifactId>
        <version>4.3.5.Final</version>
        <executions>
            <execution>
                <phase>compile</phase>
                <goals>
                    <goal>enhance</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
</plugins>

但由于某些原因,Eclipse无法识别enhance目标。另外我想进一步配置它以排除文件夹和文件(其他配置伏都教帮助也会受到赞赏)

2 个答案:

答案 0 :(得分:1)

我用this作为答案。评论还有助于解决相关问题和解释

答案 1 :(得分:0)

如果Eclipse不知道如何处理这个插件,首先要做的是设置首选项以便忽略它。但在我们的例子中,将会丢失源文件,这些文件本应由错误的插件生成。以下是解决这个问题的方法:

从命令行运行mvn package -DskipTests。它应该编译没有错误(否则你必须先修复它们然后再次使用Eclipse)。然后返回Eclipse,选择项目文件并刷新(F5)。

您应该在目标文件夹中找到名为 generated_sources 的文件夹(可能有一个子文件夹,例如target/generated_sources/annotations)。右键单击并将其添加到构建路径。

enter image description here

根据您的maven配置(例如,在多模块项目的情况下),您可能必须进一步配置构建路径,以便将项目与生成的源文件包含在引用这些源的项目的构建路径中

注意:请记住,在你的pom中添加任何东西来修复这些问题是一种不好的做法,因为它会影响团队中的其他人,他们不一定会将Eclipse用于他们的IDE。但是,如果您没有其他方法,则应考虑为IDE细节创建maven配置文件。