2016-10-14 4 views
0

私はSpring IDEとSpring Tool Suite(STS)を長年使っていても分かりません。 私はXML設定ファイルを使用しています。 |春の下で、私のEclipseプロジェクトのプロパティでSpring IDE(STS)の設定ファイルの設定:インポートされたXMLファイルもリストされるべきですか?

<import resource="classpath:path/to/otherContextFile.xml" /> 

:一つのファイルを使用して、他のXMLファイルをインポートします(「applicationContext.xmlをする」と言います) Beansのサポートで、 "<のインポートを有効にする/ >構成ファイルの要素"オプションが有効になっています。

同じプロジェクトプロパティページで、構成ファイルのリストにapplicationContext.xmlのみが含まれている場合でも、STSはotherContextFile.xmlの内容を検出して正しく解析できます。

しかし、STSが構成ファイルの自動検出を実行すると、常にそのリストにotherContextFile.xmlも追加されることがわかります。しかし、インポートされた設定ファイルをすべてこのリストに追加すると、「< import/>の設定ファイルのサポートを有効にする」というオプションが役に立たなくなります。私は自分のプロジェクトの設定をきれいに整え続けるのが好きなので、通常、このリストからインポートされたファイルを削除します。

しかし、今では自動スキャンが実行されます(STSアップグレードの場合や、わかりません...)、それらのファイルが再追加されます。これは、とにかくそれらをリストされた状態に保つより良い選択かもしれないと私に思います...

それでは、問題は、より正確で、エレガントで効率的なものです(パフォーマンスの観点から)? 「root」の設定ファイル、またはそれらのすべて(インポートされたものも含む)をリストするだけです。答えが後者の場合、そのオプションのポイントは何ですか?「<のインポートを有効にする/ >設定ファイルの要素」?

答えて

0

「設定ファイルの<import/>要素のサポートを有効にする」の主な目的は、それを使用しているものと、質問の冒頭に記述したものです。したがって、私はあなたが「正しい」方法でそれを使用していると思います(STSツールの観点から)。

自動スキャンでは、インポートされたファイルを、プロジェクトのプロパティで使用されているSpring設定ファイルのリストに追加しないでください。これはSpringブートアプリケーションのメインクラスやWebアプリケーションにリストされているファイルのような特定のファイルのみに適用されます。インポートされたファイルが毎回そのリストに追加されるのは、私は今考えていません。これはバグである可能性があります。その理由は、メカニズムが他の場所で使用されているファイルを検出するためです。

この現象を再現する小さなサンプルアプリケーションを作成し、この問題のGitHub問題を作成するには、https://github.com/spring-projects/spring-ide/issuesであれば、より詳細な表示が大好きです。サンプルプロジェクトを添付して、問題の再現方法をいくつか教えてください。

さらに、プロジェクトごとまたはワークスペース全体の「自動スキャン」を無効にすることができます(この動作をすばやく解消するには)。特定の自動設定をプロジェクトプロパティ(設定ファイルのリストの3番目のタブ)から非アクティブにすることができます。 "グローバル"ディセーブルは、一般的な "Preferences - > Spring - > Beans Support"と "Disable Auto Config Detection"で有効にすることができます。

+0

ああ、遅れて申し訳ありません... –

関連する問題