2

Hibernate、Maven、およびEclipse(STSビルド)を使用してプロジェクトをビルドしています。スキーマを指定するためにhbm.xmlファイルを使用しています。Hibernateのhbm2javaを使用してモデルクラスを生成したいと思います。私はそれがうまく機能していて、私が望む種類のコードを生成しています。

コマンドラインから完全に実行され、モデルコードが生成され、期待どおりにビルドおよびテストされます。

ただし、Eclipseはそれを処理できないようです。それは定期的に「気を失い」、手作業でコーディングされた私のDAOクラスで参照されている非常に単純なインポートとクラスを解決できなくなります。見つからないのはHibernateUtilのようなクラスです。皮肉なことに、モデルクラスを見つけるのに問題はないようです。

未解決のクラスは、実行の最後にtarget / classes/blah-blahフォルダーにあります。したがって、それらは明らかに適切な場所にコピーされています。

「継続的インテグレーション」環境では、ソースを一度生成し、それらをバージョン管理にコミットしてから、コード生成を無効にするのが最善ですか?または、毎回コードを生成して、人間の介入なしにデータベースの変更を確実に取得することは可能ですか?

4

2 に答える 2

6

IMHO、エンティティはアプリケーションの中核であり、注意深く設計、実装、文書化する必要があります。それらは、動作をカプセル化するメソッドを備えたオブジェクトであると想定されています。それらを自動生成させるのはばかげている、IMO。

最初にそれらを生成することはあなたが始めるためのオプションかもしれませんが、それらが生成されたら、それらを手作りし、それらを再び生成しないでください。スキーマの変更に応じて必要なプロパティとメソッドを追加し、既存のコードをリファクタリングします。

ところで、私はマッピングに注釈を使用することを本当に好みます。注釈は冗長性が低く、エラーが発生しにくく、すべての情報が1か所にあるためです。

于 2011-12-31T00:20:38.227 に答える
0

これを試して:

コマンドラインから、プロジェクトが存在するプロジェクトディレクトリに移動してpom.xml実行します。

mvn eclipse:clean eclipse:eclipse

プラグインEclipseが見つからないと表示された場合は、次のことを試してください。

mvn eclipse:install-plugin

まず、上記のコマンドを再試行してください。

このようにして、すべてのMavenとプロジェクトの依存関係がEclipseレベルでも解決されます。

これがあなたが探していたものではないかどうか私に知らせてください。

于 2012-10-09T20:29:31.353 に答える