クラス Restarter
java.lang.ObjectSE
org.springframework.boot.devtools.restart.Restarter
実行中のアプリケーションを更新されたクラスパスで再起動できるようにします。リスターターは、2 つの部分に分割される新しいアプリケーション ClassLoader を作成することによって機能します。上部には変更されない静的 URL(たとえば、サードパーティのライブラリや Spring Boot 自体)が含まれており、下部にはクラスとリソースが更新される可能性のある URL が含まれています。
クラスが複数回ロードされるようにするには、Restarter を早期に initialized にする必要があります。ほとんどの場合、RestartApplicationListener は初期化の実行に依存できますが、SpringApplication 引数がメインメソッドの引数と同一でない場合は、initialize(String[]) を直接呼び出す必要がある場合があります。
デフォルトでは、IDE で実行されているアプリケーション (つまり、"uber jar" としてパッケージ化されていないアプリケーション) は、変更される可能性のある URL を自動的に検出します。リモート再起動シナリオの URL またはクラスファイルの更新を手動で構成することもできます。
- 導入:
- 1.3.0
- 作成者:
- Phillip Webb, Andy Wilkinson
- 関連事項:
コンストラクターの概要
コンストラクター修飾子コンストラクター説明protectedRestarter(ThreadSE thread, StringSE[] args, boolean forceReferenceCleanup, RestartInitializer initializer) 新しいRestarterインスタンスを作成するための内部コンストラクター。メソッドのサマリー
修飾子と型メソッド説明voidaddClassLoaderFiles(ClassLoaderFiles classLoaderFiles) 次の再起動に含めるClassLoaderFilesを追加します。voidaddUrls(CollectionSE<URLSE> urls) 次の再起動に含める URL を追加します。static voidインスタンスをクリアします。static voiddisable()再起動サポートを初期化して無効にします。URLSE[]RestartInitializerによって構成された URL の初期セットを返します。static RestarterアクティブなRestarterインスタンスを返します。getOrAddAttribute(StringSE name, ObjectFactory<?> objectFactory) リークセーフスレッドの作成に使用できるThreadFactorySE を返します。protected voidinitialize(boolean restartOnInitialize) static voidinitialize(StringSE[] args) 再起動サポートを初期化します。static voidinitialize(StringSE[] args, boolean forceReferenceCleanup) 再起動サポートを初期化します。static voidinitialize(StringSE[] args, boolean forceReferenceCleanup, RestartInitializer initializer) 再起動サポートを初期化します。static voidinitialize(StringSE[] args, boolean forceReferenceCleanup, RestartInitializer initializer, boolean restartOnInitialize) 現在のアプリケーションの再起動サポートを初期化します。static voidinitialize(StringSE[] args, RestartInitializer initializer) 再起動サポートを初期化します。protected ThrowableSErelaunch(ClassLoaderSE classLoader) 指定されたクラスローダーを使用してアプリケーションを再起動します。removeAttribute(StringSE name) voidrestart()実行中のアプリケーションを再起動します。voidrestart(FailureHandler failureHandler) 実行中のアプリケーションを再起動します。protected voidstart(FailureHandler failureHandler) アプリケーションを起動します。protected voidstop()アプリケーションを停止します。
コンストラクターの詳細
Restarter
protected Restarter(ThreadSE thread, StringSE[] args, boolean forceReferenceCleanup, RestartInitializer initializer) 新しいRestarterインスタンスを作成するための内部コンストラクター。- パラメーター:
thread- ソーススレッドargs- アプリケーションの引数forceReferenceCleanup- ソフト / ウィークリファレンスクリーンアップを強制する必要がある場合initializer- 再起動イニシャライザー- 関連事項:
メソッドの詳細
initialize
protected void initialize(boolean restartOnInitialize) addUrls
次の再起動に含める URL を追加します。- パラメーター:
urls- 追加する URL
addClassLoaderFiles
次の再起動に含めるClassLoaderFilesを追加します。- パラメーター:
classLoaderFiles- 追加するファイル
getThreadFactory
リークセーフスレッドの作成に使用できるThreadFactorySE を返します。- 戻り値:
- リークセーフスレッドファクトリ
restart
public void restart()実行中のアプリケーションを再起動します。restart
実行中のアプリケーションを再起動します。- パラメーター:
failureHandler- 起動しないアプリケーションを処理するための失敗ハンドラー
start
アプリケーションを起動します。- パラメーター:
failureHandler- 起動しないアプリケーションの失敗ハンドラー- 例外:
ExceptionSE- エラーの場合
relaunch
指定されたクラスローダーを使用してアプリケーションを再起動します。- パラメーター:
classLoader- 使用するクラスローダー- 戻り値:
- 起動の失敗の原因となった例外または
null - 例外:
ExceptionSE- エラーの場合
stop
アプリケーションを停止します。- 例外:
ExceptionSE- エラーの場合
getOrAddAttribute
removeAttribute
getInitialUrls
RestartInitializerによって構成された URL の初期セットを返します。- 戻り値:
- 初期 URL または
null
disable
public static void disable()再起動サポートを初期化して無効にします。initialize
再起動サポートを初期化します。詳細については、initialize(String[], boolean, RestartInitializer)を参照してください。- パラメーター:
args- 主なアプリケーション引数- 関連事項:
initialize
再起動サポートを初期化します。詳細については、initialize(String[], boolean, RestartInitializer)を参照してください。- パラメーター:
args- 主なアプリケーション引数initializer- 再起動イニシャライザー- 関連事項:
initialize
再起動サポートを初期化します。詳細については、initialize(String[], boolean, RestartInitializer)を参照してください。- パラメーター:
args- 主なアプリケーション引数forceReferenceCleanup- ソフト / ウィークリファレンスの強制が発生した場合- 関連事項:
initialize
public static void initialize(StringSE[] args, boolean forceReferenceCleanup, RestartInitializer initializer) 再起動サポートを初期化します。詳細については、initialize(String[], boolean, RestartInitializer, boolean)を参照してください。- パラメーター:
args- 主なアプリケーション引数forceReferenceCleanup- ソフト / ウィークリファレンスの強制が発生した場合initializer- 再起動イニシャライザー- 関連事項:
initialize
public static void initialize(StringSE[] args, boolean forceReferenceCleanup, RestartInitializer initializer, boolean restartOnInitialize) 現在のアプリケーションの再起動サポートを初期化します。RestartApplicationListenerによって自動的に呼び出されますが、メインアプリケーションの引数がSpringApplicationに渡された引数と異なる場合は、直接呼び出すこともできます。- パラメーター:
args- 主なアプリケーション引数forceReferenceCleanup- 再起動ごとにソフト / ウィークリファレンスを強制する必要がある場合。これは再起動を遅くし、主にテストを目的としていますinitializer- 再起動イニシャライザーrestartOnInitialize-RestartInitializerがnull以外の結果を返したときに、リスターターをすぐに再起動する必要がある場合
getInstance
アクティブなRestarterインスタンスを返します。initializationの前に呼び出すことはできません。- 戻り値:
- リスターター
clearInstance
public static void clearInstance()インスタンスをクリアします。主にテスト用に提供され、通常はアプリケーションコードでは使用されません。