0

統合テストを実行する前に、データベースをセットアップする必要があります。これには、SQL スキーム (JPA アノテーションに基づく) の生成、ファイルへの保存、他のリソースと一緒にディレクトリへのコピーが含まれます。このディレクトリは、後で war ファイル (Jetty にデプロイされます) の作成に使用されます。

したがって、hibernate3-maven-pluginSQL スキームを生成するために次の構成を使用します: http://pastebin.ubuntu.com/606229/

hsql-scheme.sql結果をWARファイルにパッケージ化する場所に src/env/test/WEB-INF/classesコピーするには、次を使用します: http://pastebin.ubuntu.com/606230/target/

しかし、実行するとmvn verify -P test(はい、これらすべてのコードが別のプロファイル内にあります)、次のようになります:http://pastebin.ubuntu.com/606231/

ご覧hibernate3:hbm2ddlのとおり、SQL スキームは生成されず、結果のファイルは空です (それ以外の場合は、コンソールにも表示されます)。そして、これは問題です。

問題の根本は(私が理解しているように)hibernate3:hbm2ddl invokes the execution of the lifecycle phase process-resources prior to executing itself.

前もって感謝します!

4

1 に答える 1

0

この質問は、スキーマの作成を修正するのに役立ちました。

  • hibernate3:hbm2ddl代わりにprepare-packageフェーズで呼び出すgenerate-resources

  • 結果をhibernate3:hbm2ddl直接に置くtarget/${build.finalName}/WEB-INF/classes

そのため、今でもhibernate3:hbm2ddl invokes the execution of the lifecycle phase process-resources prior to executing itself警告が表示されますが、ファイルtarget/${build.finalName}/WEB-INF/classes/hsql-scheme.sqlは以前のように空ではありません。

于 2011-05-14T11:22:47.063 に答える