クラス CandidateComponentsIndexLoader

java.lang.ObjectSE
org.springframework.context.index.CandidateComponentsIndexLoader

public final class CandidateComponentsIndexLoader extends ObjectSE
フレームワーク内での内部使用のための候補コンポーネントインデックスロードメカニズム。
導入:
5.0
作成者:
Stephane Nicoll, Juergen Hoeller
  • フィールドの詳細

    • COMPONENTS_RESOURCE_LOCATION

      public static final StringSE COMPONENTS_RESOURCE_LOCATION
      コンポーネントを探す場所。

      複数の JAR ファイルに存在できます。

      関連事項:
    • IGNORE_INDEX

      public static final StringSE IGNORE_INDEX
      コンポーネントインデックスを無視するように、つまり常に loadIndex(ClassLoader) から null を返すように Spring に指示するシステムプロパティ。

      デフォルトは "false" で、インデックスを定期的に使用できます。このフラグを true に切り替えると、一部のライブラリ(またはユースケース)でインデックスが部分的に利用可能であるが、アプリケーション全体で構築できなかった場合のコーナーケースシナリオが実行されます。この場合、アプリケーションコンテキストは通常のクラスパス配置にフォールバックします(つまり、インデックスがまったく存在しないかのように)。

      関連事項:
  • メソッドの詳細

    • loadIndex

      public static @Nullable CandidateComponentsIndex loadIndex(@Nullable ClassLoaderSE classLoader)
      指定されたクラスローダーを使用して、 "META-INF/spring.components" から CandidateComponentsIndex をロードしてインスタンス化します。インデックスが利用できない場合は、null を返します。
      パラメーター:
      classLoader - ロードに使用する ClassLoader (デフォルトを使用するために null にすることができます)
      戻り値:
      使用するインデックス、またはインデックスが見つからなかった場合は null 
      例外:
      IllegalArgumentExceptionSE - モジュールインデックスをロードできない場合、または CandidateComponentsIndex の作成中にエラーが発生した場合
    • addIndex

      public static void addIndex(ClassLoaderSE classLoader, CandidateComponentsIndex index)
      指定された ClassLoader の指定されたインデックスインスタンスをプログラムで追加し、ファイルによって決定されたインデックスをプログラムで構成されたインデックスに置き換えます。

      インデックスインスタンスは通常、AOT ランタイムセットアップまたはテストシナリオ用に、ランタイムスキャンの事前設定された結果とともに事前に設定されます。あるいは、AOT 処理中またはテスト実行中にインデックスインスタンスが設定され、その後のインデックスに記録された候補型をイントロスペクションするために空になることもあります。

      パラメーター:
      classLoader - ClassLoader にインデックスを追加する
      index - 関連する CandidateComponentsIndex インスタンス
      導入:
      7.0
    • clearCache

      public static void clearCache()
      ランタイムインデックスキャッシュをクリアします。
      導入:
      7.0