2017-05-13 3 views
0

mavenを使用してJARを構築しようとしています。私のソースコードに存在しなくなったクラスを参照するMaven戻りエラー

mvn clean install -Dmaven.test.skip = true -eを使用してJARをビルドしようとすると、Mavenは以下のエラーを返します。エラーメッセージで各クラスの完全なパッケージ名を削除しました。

ResourceHibernateDaoのgetSession()は、AbstractHibernateDaoのgetSession()をオーバーライドできません。オーバーライドされたメソッドがfinalです public final Session getSession()

AbstractHibernateDaoは私のソースコードに存在しません。私は関連するすべてのコードを、ResourceHibernateDaoが継承する新しいクラスに移動しました。新しいクラスでは、getSession()メソッドはfinalではありません。したがって、なぜ私はエラーメッセージが表示されているのかわからず、AbstractHibernateDaoが存在しなくなったときにそれがなぜ参照されるのかが不明です。 mavenがビルドするターゲットフォルダを削除しようとしましたが、ローカルリポジトリ内のアーティファクトを削除しましたが、mavenは同じエラーを返し続けます。参考までに、私はMavenバージョン2.2.1を使用しています。誰かがなぜ存在しないクラスを参照しているのか、クラスがもはや存在しないことを認識させる方法を知っていますか?

+0

'mvn'コマンドラインに' -X'を追加すると、詳細なデバッグ出力が可能になります。 –

+0

'AbstractHibernateDao'が存在しない場合、Mavenはそれを見つけるべきではありませんが、Mavenは' AbstractHibernateDao'が 'ResourceHibernateDao'の親であると考えているようです。これが削除前のケースだった場合、Mavenは 'ResourceHibernateDao'の古いバージョンを参照しています。 Mavenプロジェクトで必要とされないものはすべて削除してください。ローカルリポジトリでプロジェクトに関連する成果物を手動で削除することもできます。 – 11thdimension

答えて

0

私の質問に対する答えが見つかりました。私の輸入品の1つに間違ったパッケージ名があることが分かります。

関連する問題