ページの先頭です。
ここから本文です。

よくあるご質問(サポートFAQ)

【WebOTX Application Server】NoClassDefFoundError: Could not initialize class について(OTX-FAQ-000790)

質問内容

java.lang.NoClassDefFoundError: Could not initialize class [クラス名] というエラーが発生しました。
該当クラスのクラスファイルは存在します。原因を教えてください。

回答内容

※ 本エラーは、Java VM の実装に依存します。

java.lang.NoClassDefFoundError: Could not initialize class [クラス名]

上記の「Could not initialize class [クラス名]」というエラーメッセージから、該当クラスのクラスファイルは見つかっていますが、クラスの初期化に失敗していることがわかります。

※ クラスファイル自体が見つからない場合、エラーメッセージは以下のようになります。(com.example.Foo の場合)
- java.lang.NoClassDefFoundError: com/example/Foo

上記のクラスの初期化中に何らかのエラーが発生していると思われますので、クラスの static イニシャライザに try ~ catch を追加してエラー内容をログに出力するなどして、エラーの原因を確認してください。


なお、NoClassDefFoundError: Could not initialize class [クラス名] というエラーは以下のようにして発生します。

[Step1]
1. クラスまたは親クラスの初期化時にエラーまたは例外が発生する。
2. 初期化時にエラーが発生したことをクラスにマークする。
3. エラーが発生した場合はそのエラーを、例外が発生した場合は ExceptionInInitializationError を投げる。
(ここで投げられたエラーは、その後に発生するエラーや例外によって隠されてしまう場合がある)

[Step2]
1. 別の箇所で再び同じクラスの初期化を行おうとする。
2. 以前の初期化でエラーが発生しているかどうかマークをチェックする。
3. 以前の初期化でエラーが発生したとマークされているため、初期化を行わず NoClassDefFoundError を投げる。

【対象製品】Application Server
【確認済みのバージョン】すべて
【確認済みのエディション】すべて
【確認済みの対象OS】すべて
【確認済みのJavaバージョン】すべて
【コンポーネント】配備
【カテゴリー】トラブルシューティング

製品名カテゴリ

WebOTX
WebOTX Application Server

  • コンテンツID: 3150104719
  • 公開日: 2013年03月13日
  • 最終更新日:2015年04月10日

アンケート

サポート情報充実のためアンケートにご協力をお願いいたします。



コメント欄:
ここからページ共通メニューです。 ページ共通メニューを読み飛ばす。