classmexer-0.3.jar を tomcat で使用して、Web アプリケーションのオブジェクト サイズを取得しようとしています。ただし、メソッドが呼び出されると、次のエラー メッセージが表示されます。
java.lang.NoClassDefFoundError: Ljavax/transaction/TransactionManager;
java.lang.Class.getDeclaredFields0(Native Method)
java.lang.Class.privateGetDeclaredFields(Class.java:2308)
java.lang.Class.getDeclaredFields(Class.java:1760)
com.javamex.classmexer.MemoryUtil.deepMemoryUsageOf0(MemoryUtil.java:197)
com.javamex.classmexer.MemoryUtil.deepMemoryUsageOf(MemoryUtil.java:104)
com.javamex.classmexer.MemoryUtil.deepMemoryUsageOf(MemoryUtil.java:80)
これを修正するにはどうすればよいですか? クラス TransactionManager の jar が必要だと思いますが、どれかわかりません。
私のプロジェクトは、開発用にEclipseでMavenを使用して構築され、Jenkinsを使用してUNIXサーバーから実行されます。
乾杯、
アレクセイ・ブルー。
編集:セットアップが正しいことを示唆する、より基本的なオブジェクトに対して現在機能しているようです。obj に Google LoadingCache が含まれている MemoryUtil.deepMemoryUsageOf(Obj) を呼び出すときに問題が発生したと思います。そのためのソースが不足しているようですが、そのソースについてのアイデアはありますか?