第7章 ライフサイクル管理


7.1. バンドルのライフサイクル状態

OSGi 環境のアプリケーションは、そのバンドルのライフサイクルの影響を受けます。バンドルには 6 つのライフサイクル状態があります。

  1. インストール済み: すべてのバンドルはインストール済みの状態で起動します。インストール済み状態のバンドルは、すべての依存関係が解決されるのを待機し、解決されると、バンドルは解決済み状態に移行します。
  2. 解決済み: 次の条件が満たされると、バンドルは解決済み状態に移行します。

    • ランタイム環境は、バンドルで指定された環境を満たすか、それを上回ります。
    • バンドルでインポートされたパッケージはすべて、解決済みの状態にあるか、現在のバンドルと同時に解決済みの状態に移行できるバンドルにより公開されます。
    • 必要なバンドルはすべて解決済みの状態であるか、現在のバンドルと同時に解決できます。

      重要

      アプリケーションを開始する前に、アプリケーションのすべてのバンドルが解決済みの状態になっている必要があります。

      上記の条件のいずれかが満たされない場合には、バンドルはインストール済み状態に戻されます。たとえば、これは、インポートされたパッケージを含むバンドルがコンテナーから削除された場合に発生する可能性があります。

  3. 開始: 開始状態は、解決された状態とアクティブな状態の間の一時的な状態です。バンドルが開始されると、コンテナーはバンドルのリソースを作成する必要があります。また、提供されている場合、コンテナーはバンドルのバンドルアクティベーターの start() メソッドも呼び出します。
  4. アクティブ: アクティブ状態のバンドルは作業に使用できます。アクティブ状態ででのバンドルの動作は、バンドルの内容によって異なります。たとえば、JAX-WS サービスプロバイダーを含むバンドルは、サービスが要求を受け入れる準備ができていることを指します。
  5. 停止: 停止状態は、アクティブ状態と解決済み状態の間の一時的な状態です。バンドルが停止すると、コンテナーはバンドルのリソースを消去する必要があります。また、提供されている場合、コンテナーはバンドルのバンドルアクティベーターの stop() メソッドも呼び出します。
  6. アンインストール済み: バンドルがアンインストールされると、解決済みの状態からアンインストール済みの状態に移行します。この状態のバンドルは、解決済みの状態またはその他の状態に戻すことはできません。明示的に再インストールする必要があります。

アプリケーション開発者にとって最も重要なライフサイクル状態は、開始状態と停止状態です。アプリケーションによって公開されるエンドポイントは、開始状態の間に公開されます。公開されたエンドポイントは、停止状態の間に停止されます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.