legacy-knowledge-base
公開されました Sep. 10, 2025

カスタムJARの構造的な問題を自己診断する

written-by

Emma Liu

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

この記事では、カスタムジャーの構造上の問題を自己診断する方法を記録しています。 カスタムジャーの構造上の問題にはさまざまな種類がありますが、これは開発者が開発中に構造上の問題をトラブルシューティングするための一般的なガイドラインです。

解決

1. bnd コマンドを使用して、モジュールのシンボリック名の構文を確認する。

  1. Developer Tools > Liferay Project SDK > Latest Releaseから Liferay Dev Studio インストーラーをインストールします。
  2. 以下のコマンドを実行して、モジュールのシンボル名を確認し、 Resolve Bundle-SymbolicName Syntax Issues.

    bnd print [path-to-bundle]

    以下に例を示します。

    emma$ bnd print bookmark.custom-1.0.0.jar
    [MANIFEST bookmark.custom-1.0.0]
    Bnd-LastModified                         1518747539446
    Bundle-ManifestVersion                   2
    Bundle-Name                              bookmark-custom
    Bundle-SymbolicName                      bookmark.custom
    Bundle-Version                           1.0.0
    Created-By                               1.8.0_45 (Oracle Corporation)
    Fragment-Host                            com.liferay.bookmarks.web;bundle-version="1.0.15"
    Import-Package                           javax.servlet,javax.servlet.http
    Javac-Debug                              on
    Javac-Deprecation                        off
    Javac-Encoding                           Cp1252
    Manifest-Version                         1.0
    Tool                                     Bnd-3.2.0.201605172007
    
    [IMPEXP]
    Import-Package
      javax.servlet
      javax.servlet.http
    

2. 以下の GogoShell コマンド を使用して、バンドルとフラグメントのステータスを確認します。

  1. lb -s [Bundle-SymbolicName]

    lb - DXP のモジュールフレームワークにインストールされているすべてのバンドルをリストアップします。 -s フラグを使用すると、バンドルのシンボル名を使用してバンドルをリストアップします。

    以下のような出力になるはずです:

    g! lb -s bookmark.custom
    START LEVEL 20
       ID|State      |Level|Symbolic name
      753|Resolved   |   10|bookmark.custom (1.0.0)
    

    注:バンドルは ACTIVE ステータス、フラグメントは RESOLVED ステータスである必要があります。

  2. b [BUNDLE_ID]

    シンボル名、バンドルID、データルート、登録(提供)・使用サービス、インポート・エクスポートされたパッケージなど、特定のバンドルに関する情報を一覧表示します。

    以下のような出力になるはずです:

    g! b 753
    bookmark.custom_1.0.0 [753]
      Id=753, Status=RESOLVED    Data Root=/home/emma/Liferay/bundles/dxp/liferay-dxp-digital-enterprise-7.0-sp6/osgi/state/org.eclipse.osgi/753/data
      "No registered services."
      No services in use.
      No exported packages
      No imported packages
      Host bundles
        com.liferay.bookmarks.web_1.0.33 [59]
    
  3. diag [BUNDLE_ID]

    指定したバンドルが動作しない理由(未解決の依存関係など)に関する情報を一覧表示します。

    以下のような出力になるはずです:

    g! diag 754
    com.liferay.portal.search.elasticsearch6.impl [754]
      Unresolved requirement: Import-Package: com.liferay.portal.search.elasticsearch6.configuration; version="[1.0.0,2.0.0)"

3. 未解決のOSGIコンポーネントを検出する手順

トラブルシューティングの手順 未解決のOSGIコンポーネントを検出するために、以下のセクションに分かれています:

4. ソースコードが入手可能でアップグレード中であれば、ブレークチェンジの検出が可能

  1. DXP 7.0 ブレークチェンジ
  2. コードアップツールでLiferay Portal CE 7.0のAPIに対応する。

追加情報

以下のリストは、基礎となるOSGiプラットフォームに基づいて発生する可能性のある問題をトラブルシューティングするのに役立つ、よくある質問の一部です。 提供された回答は、文書化された問題を修正するのに役立ちます。 これらのほとんどは、 トラブルシューティング FAQ ページに記載されています。

did-this-article-resolve-your-issue

legacy-knowledge-base