1

私はかなり「標準的な」Java Web アプリケーションに長い間取り組んできました。Eclipse のサーバー プラグインを使用して Eclipse で開発し、Tomcat でアプリを実行します。アプリのセットアップは簡単です。ブートストラップ用の Spring、Web 用の Wicket、ORM 用の Hibernate、依存関係管理用の Maven です。

今日、プロジェクトに Akka 2.0 を追加しました。マニュアルに従ってPOMに追加しました:

<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-actor</artifactId>
<version>2.0.2</version>
</dependency>

Maven が依存関係を見つけ、Eclipse のパッケージ エクスプローラーの Maven 依存関係に表示されるのを確認できます。参照されている Scala ライブラリも表示されます (バージョン 2.9.2 のようです)。

期待どおりにライブラリを使用できます。Eclipse がクラスを検出し、ソース ファイルにジャンプできます。すべてが完全に機能します。しかし、アプリを起動すると、Akka への参照を含むプログラムの一部に遭遇すると、NoClassDefFoundError がスローされます。

他のすべてのライブラリは引き続き期待どおりに動作するため、これは Akka が Scala で開発されたライブラリであるという事実と関係があると考えられます。私は Scala をほとんど使用したことがないので、自分で問題の解決策を見つけることができませんでした。Google は、そのような一般的な例外に関してはあまり役に立ちません。

何かアドバイスはありますか?

4

1 に答える 1

1

必要なライブラリ (AKKA) が Eclipse の配置アセンブリにあることを確認します。プロジェクトのプロパティを開き、左側で [配置アセンブリ] を探します。

【エクリプスインディゴを使用しています】

tomcat でのデプロイメントを調べることで、予想される jar ファイルの存在 (または欠如) を確認できます。

于 2012-07-31T18:17:17.693 に答える