Mavenはターゲット/Hibernate3/Generated-Sourcesをコンパイルしません
-
04-10-2019 - |
質問
誰かがMavenを構成する方法を教えてもらえますか target/hibernate3/generated-sources
ディレクトリ?私はすでに読んでいます これ 他の投稿ですが、彼らは私の問題を解決していないようです(実際には些細なようです)。
CFG.xml、hbm.xml、およびPojoの生成のボトムアップアプローチHibernate構成を使用しました(つまり、既存のデータベーススキーマから完全なHibernate構成を自動生成しました)。また、標準のみを使用しています maven
と hibernate3-plugin
ディレクトリレイアウト。それでも、実行するとき mvn compile
私の情報源が中にある間にコマンドラインで src/main/java
および生成されたソース /target/hibernate3/generated-sources
からのものだけ src/main/java
コンパイルされてコピーします target/classes
. 。ソースを生成したくありません src/main/java
私が望むように mvn clean
それらをきれいにするために。
使用して問題を解決したいと思います command-line
, plugins
と pom.xml
それだけ。構成する方法はありますか maven-compiler-plugin
そうするために?または別の方法はありますか?
よろしくお願いします。
解決
コンベンションは、コードを生成することです target/generated-sources/<generator>
だからあなたの場合、私はでソースを生成します target/generated-sources/hibernate3
(hibernate3プラグインがデフォルトでこのコンベンションに従わないのは悲しいことです)。とにかく、物事はうまくいくはずであり、実際には、私が投稿したpom この前の答え そうです(サンプルプロジェクトを再ランしますが、間違いなく機能します)。あなたはの犠牲者になれますか Mhibernate-104?正直なところ、私は混乱しています。
回避策として、を使用できます ヘルパーマベンプラグインをビルドします そしてその build-helper:add-source
ソースディレクトリとしてディレクトリを追加する目標。を参照してください 使用法 構成の例のページ。
ここで提案したPOMを正確に使用していますが、デフォルトのビルドライフサイクルに接続されていません(実行なし)。
それが問題の原因でなければなりません:もし hibernate3:hbm2java
ビルドライフサイクルの一部ではなく、出力ディレクトリをソースフォルダーとして登録する機会がありません。したがって、Mavenは「通常のビルド」中にそれを認識しておらず、それを無視するだけです。