0

Web アプリケーションのバイト コードを計測する Salve Dependency Injection ライブラリを使用しています。Tomcat VM オプションで -javaagent を指定し、Salve エージェント jar を指定しました。

エージェント jar が読み込まれますが、Web アプリの WEB-INF/lib フォルダーにある他の Salve jar にあるクラスが見つからないという java.lang.NoClassDefFoundError がスローされます。

これらの JAR を Tomcat/endorsed フォルダーに配置することで、この問題を解決できます。ただし、これらの jar の一部は、Spring や servlet-api.jar などのサードパーティ ライブラリに依存しています。したがって、これらすべての依存関係を Tomcat/endorsed にも配置する必要があります。

Tomcat javaagent の依存関係を処理するためのより良い方法を提案できる人はいますか?

ありがとう。

4

3 に答える 3

0

これは非常に奇妙に聞こえます。エージェントは通常、他のクラスに依存しません。エラーを誤解していると思います。依存関係が計測されたクラスからのものであり、間違ったクラスが計測されてしまう可能性はありますか?

于 2010-03-28T07:20:05.813 に答える
0

Salve ライブラリは複数の JAR で構成されています。それらの一部は、Spring などのサードパーティ ライブラリに依存しています。これらの JAR を tomcat/endorsed から webapp の WEB-INF/lib に移動することになりました。私の発見と最終的な作業ディレクトリ構造はここに文書化されています?

于 2011-06-01T15:47:40.400 に答える
0

軟膏?なんてこと?AspectJ を使用します。

「Springに依存する依存性注入フレームワーク」 - o_O ?!

于 2010-04-16T06:11:06.063 に答える