Pregunta

Tengo un archivo JAR creado localmente que contiene entidades anotadas por hibernación.También tengo un proyecto separado que hace referencia a este frasco.

Necesito crear un script de DB usando HBM2DDL, pero estoy encontrando algunas dificultades.Cuando intento usar la tarea en la versión de Build.XML del archivo JAR, no se puede encontrar la unidad de persistencia.Cuando trato de usar la tarea en la versión de Build.XML del archivo de guerra, no se encuentran entidades en absoluto.

Esto tiene que ser algo que se está haciendo con otros: ¿cómo crea el SQL cuando las entidades y los EM están en diferentes proyectos de Eclipse construidos por scripts de compilación separados?

¿Fue útil?

Solución

The trick here was including the jar file in the classpath of the task which includes hbm2ddl:

<target name="schemaexport" depends="compile">
    <hibernatetool destdir="${basedir}/sql">
        <classpath>
            <fileset dir="${lib.dir}">
                <include name="common.jar" />
            </fileset>
        </classpath>
        <jpaconfiguration />
        <hbm2ddl export="false" create="true" drop="true" delimiter=";" format="true" outputfilename="${project.name}-ddl.sql" />
    </hibernatetool>
</target>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top