1

orm.xml ファイルからスキーマ (ddl) を生成しようとしています。hibernate3-maven-plugin を使用しています。実装として休止状態で JPA を使用していますが、他の実装または maven プラグインを使用できます。私の pom.xml のコードは次のとおりです。

 <build>
    <plugins>
        <plugin>                
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>hibernate3-maven-plugin</artifactId>
            <version>3.0</version>

            <configuration>
                <hibernatetool>
                    <jpaconfiguration persistenceunit="unitname" />

                    <hbm2ddl export="false" create="true"
                 update="true" format="true" outputfilename="schemaDiff.ddl" />

                </hibernatetool>
            </configuration>
        </plugin>            
    </plugins>
</build>

私が実行するコマンドは次のとおりです。

mvn hibernate3:hbm2ddl -e

私が受け取ったエラーは次のとおりです。

原因: java.lang.NoClassDefFoundError: org.hibernate.tool.ant.JPAConfigurationTask.createConfiguration(JPAConfigurationTask.java:32) の org/hibernate/util/ReflectHelper java:54) org.hibernate.tool.ant.HibernateToolTask​​.getConfiguration(HibernateToolTask​​.java:302) で org.hibernate.tool.ant.Hbm2DDLExporterTask.createExporter(Hbm2DDLExporterTask.java:51) で org.hibernate.tool.ant .ExporterTask.execute(ExporterTask.java:39) で org.hibernate.tool.ant.HibernateToolTask​​.execute(HibernateToolTask​​.java:186) で org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) でsun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) at sun.reflect.NativeMethodAccessorImpl.org.apache.tools.ant.dispatch で java.lang.reflect.Method.invoke(Method.java:597) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) で invoke(NativeMethodAccessorImpl.java:39) .DispatchUtils.execute(DispatchUtils.java:106) ... 28 詳細

原因: java.lang.ClassNotFoundException: org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) の org.hibernate.util.ReflectHelper (org.codehaus.plexus.classworlds.realm.ClassRealm)。 loadClass(ClassRealm.java:244) at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) ... 40 詳細

4

1 に答える 1

1

George Herolyantsは、ここで解決策を提示します。

http://doingenterprise.blogspot.com/2012/05/schema-generation-with-hibernate-4-jpa.html

于 2012-11-07T20:22:48.030 に答える