2016-11-24 12 views
0

これは非常に一般的な状況ではありませんが、依存関係から別のコンテキストをインポートするSpringコンテキストのmavenモジュール(実際にはテスト用ですが、重要ではありません)同じコンテキスト名でSpringインポートの競合:同じ名前のコンテキストを持つ複数のjarファイル

test module 
    test-context import beans.xml 
under test jar 
    has beans.xml 
another dependency jar 
    has beans.xml 

<import resource="classpath:beans.xml />クラスパスに最初のコンテキストをロードし、それが正しいものではありません:)

コンテキスト名またはその場所を変更することなく、競合を解決する方法はありますか?私。基本的に私はリソースクラスパス解決から1つのjarを除外したいと思います。

答えて

0

ファイルを移動/名前を変更する以外に方法がないと思うので、私は負の応答を予約します。これは、クラスターパスの両方のジャーが同じ優先順位を持つので、最初のものが勝ちます。

また、JARファイル名が依存バージョンによって異なる可能性があるため、jarファイルをクラスパスから除外する方法はないと思います。例えば、SpringではなくMavenで完全に管理しています。

残念ながら1つの残酷な方法がありますが、いくつかのmavenプラグインによってBean.xmlを削除して、その場でリパック依存関係のジャーを作成します。

関連する問題