问题描述
我以前在Hibernate 4.x中使用一个蚂蚁目标来检测我的类:
<target name="instrument" depends="compile">
<taskdef name="enhance" classname="org.hibernate.tool.enhance.EnhancementTask">
<classpath refid="extended.classpath"/>
<classpath path="${classbin.dir}"/>
</taskdef>
<instrument verbose="true">
<fileset dir="${TARGETROOT}/home/WEB-INF/classes">
<include name="org/zfin/publication/Publication.class"/>
</fileset>
</instrument>
</target>
但是当我升级到Hibernate 5.3.7时,这停止了工作。在ant中执行此操作的正确方法是什么?注意,我不使用Maven。
我尝试了此更改
<target name="instrument" depends="compile">
<taskdef name="enhance" classname="org.hibernate.tool.enhance.EnhancementTask">
<classpath refid="extended.classpath"/>
<classpath path="${classbin.dir}"/>
</taskdef>
<enhance base="${classbin.dir}" dir="${classbin.dir}/org/zfin/publication" failOnError="false" enableLazyInitialization="true"
enableDirtyTracking="false"
enableAssociationManagement="false"
enableExtendedEnhancement="false">
</enhance>
</target>
但是输出了 [增强]无法增强课程:Publication.class
指示它不起作用。它增强了该目录中的某些类,但没有增强我需要的类。
解决方法
我发现Hibernate 5.3.7使用的是字节伙伴1.8.17。升级到字节好友1.10.18时,一切正常!