問題タブ [noclassdeffounderror]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Android Dalvik VM での java.util.logging.LogManager のロード時のクラス初期化の問題
Android ネイティブ ライブラリに変更を加え、新しい system.img ファイルをインストールしましたが、起動時に関係のないエラーが発生しています。エラーを飲み込むことでそれを乗り越えることができますが、誰かが問題を説明できるかどうか知りたかったのです。
Logger.java の Android 実装は、そのクラスの初期化コードが必要な 1 回限りのセットアップを実行するため、LogManager の初期化を強制していると主張しています。しかし、この強制的な初期化により、NoClassDefFoundError が発生します。クラスがまだ Zygote によってプリロードされていないことと関係があると思いますが、クラス ローダー全体と VM ビジネスについてはあまり詳しくありません。
誰かが何らかの洞察を持っているなら、それは大歓迎です。ありがとう。
java - 「開いているファイルが多すぎます」というエラーが発生した後、Java VM が回復しないのはなぜですか?
十分に理解されている特定の状況では、アプリケーションはあまりにも多くのソケット (データベース接続) を開き、OS が許可する最大オープン ファイルに達します。私たちはこれを理解しています。問題を修正し、制限を引き上げています。
説明できないのは、接続数が減り、制限内に収まった後でも、アプリケーションの一部が回復しない理由です。
この場合は、Tomcat で実行されるアプリケーションです。
これが発生すると、最初に「開いているファイルが多すぎます」というエラーが表示され始めます。
最終的に、NoClassDefFoundError
HTTP 接続を開こうとしているアプリケーション スレッド内に s が表示されるようになります。
誤った接続がなくなると、サーバーは再び接続の受け入れを開始し、すべて問題ないように見えますが、後者のエラーが常に stderr に吐き出されたままになります。
アプリケーションは通常、アンロードされたクラスを stdout に記録しますが、「開いているファイルが多すぎます」エラーの直前、最中、または直後に、そのようなログは表示されません。
私の最初の理論は、Hotspot JVM は「開いているファイルが多すぎます」と遭遇すると、未使用に見えるクラスをアンロードするというものでした。
編集: Stephen Cが以下に示すように、クラスをアンロードしていて、最初のリロード時にエラーが発生した場合、それが回復しない理由を説明できます. それは良い作業理論だと思います。Sun のドキュメントに記載されていますか? 通常のクラスのアンロードとは異なり、クラスがアンロードされていることをログに記録しないのはなぜですか?
プラットフォームの詳細:
java - さらに別の Java クラスパスの問題
私は Netbeans のプロジェクトに取り組んできました。次に、それを送信して、マーカーがスクリプトでコンパイルできるようにします。ただし、コマンド ラインから実行しようとすると、NoClassDefFoundError が発生します。クラスパスを現在のディレクトリに手動で設定する場合でも。
javac Main.java は正常に動作します
次に java -classpath を呼び出します。メインは次のとおりです。
java - java.lang.ClassNotFoundException:org.springframework.ui.ModelMap
tomcat 6、spring 2.5.6、mavenを使用して簡単なWebアプリを作成します。
問題は、Tomcatを起動すると、次のエラーが発生することです。
ModelMapクラスはとに存在しspring-2.5.6.jar
ますspring-context-2.5.6.jar
。他にもいくつかのスプリングjarがあります。それらはすべてtomcatに正しくデプロイされています。アプリケーションWEB-INF(tomcatにデプロイされている)を確認すると、そこにすべてのjarが見つかりました。
メソッドを持つ@Controllerは1つだけ@RequestMapping("/home.htm") showForm(ModelMap model)
です。私のapplicationContextは非常に単純です:
android - Android 1.5 で自分のパッケージで java.lang.NoClassDefFoundError がスローされる
プロジェクト内に複数のパッケージを含むアプリケーションを開発しました...それらのパッケージの 1 つのクラスがコードの最初の行ですぐに呼び出され、恐ろしい java.lang.NoClassDefFoundError エラーがスローされます...私はしませんパッケージは単にプロジェクト内にあり、Android 1.6 デバイスでは正常に動作しますが、1.5 デバイスでは動作しません...プロジェクトはもともと 1.6 用に設定されていたと言わざるを得ませんが、その後、マニフェスト内を 4 から 3 に変更しました...それは悪い習慣ですか? それとも、プラットフォームのバージョンとは関係ありませんか?
また、DDMS からこれらの行も取得します。
これは、デバイス自体のいくつかの情報フィールドを取得しようとする ManagementModule です... 繰り返しますが、これは 1.6 デバイスで問題なく動作しますが、これは開発デバイスですが、私の 1.5 デバイスは非開発デバイスです...
java - Liferayとbonita:noclassdeffounderror
Bonitaワークフローで動作するポートレットをLiferayで開発しようとしていますが、タイトルで例外が発生し続けます。私はJavaの世界に特に精通していないので、何に頭をぶつけるのかわかりません:)
java - Javaプログラムを実行できません!NoClassDefFoundError?
私は.NET開発者ですが、現在のプロジェクトでは、JavaプロジェクトであるGoogleCajaを使用する必要があります。ええとああ!
Windowsマシンでhttp://code.google.com/p/google-caja/wiki/RunningCajaのガイドに従いましたが、プログラムを実行できません。彼らが提案するコマンドラインが機能しなかったので、私はant-jarsディレクトリにcdして、plugin.jarを実行しようとしました。
それはどうですか?
test.htmの代わりにfile:/// d:/java/caja/svn-changes/pristine/ant-jars/test.htmも試しました。ソースを見ると、ファイルパラメータはURIであるようです...
また、plugincでIKVMを実行して、Javaについて心配しないようにしましたが、ClassDefNotFoundExceptionも発生しました...
ありがとう!
編集:これまでの助けをみんなに感謝します:)まだ立ち往生しています。頑張ってください。これは、.net開発者が美しいOSSテクノロジーに切り替えることの始まりかもしれません。
build.xmlファイルのコードを指定して実行する方法はありますか?
spring - NoClassDefFoundエラー-SpringJDBC
現在、.classファイルをeclipseでコンパイルし、%tomcat_home%\webapps\myapp\WEB-INF\classes
ディレクトリに移動しています。それらはうまくコンパイルされます。
私はまた、私が確認した...\classes
ディレクトリにクラスが含まれていることを確認しました。org.springframework.jdbc-3.0.2.RELEASE.jar
org.springframework.jdbc.datasource.DriverManagerDataSource
ただし、NoClassDefFound
クラスを実行するとエラーが発生します。DriverManagerDataSource source = new DriverManagerDataSource();
なぜその瓶が見つからないのかわかりません。
どんな助けでも大歓迎です!
java - コマンドラインを介してコンパイルおよび実行すると、Javaパッケージを検索しようとしたときにNoClassDefFoundErrorが表示されます
オブジェクトの送受信を試みるクライアント/サーバープログラムがあります。
3つのパッケージがあります:サーバー、クライアント、共有共有にはメッセージクラスのみが含まれます
共有パッケージのMessage.javaを、calcclientパッケージのソースファイルおよびcalcserverパッケージのソースファイルと同じフォルダーに配置しました。
次の行を使用してコンパイルします。javac-classpath。; (clientまたはserver.javaファイルの長いリスト)Message.javaコンパイルできます。次に、ディレクトリを1レベル上に変更し、次のコマンドで実行しました。java-classpath。; 。主要
Netbeansを使用して実行すると、プログラム全体が通常どおりに機能します。しかし、コマンドラインから実行した場合はそうではありません。コマンドラインから実行した場合、プログラムはMessageオブジェクトを使用する必要があるまで動作します。次に、NoClassDefFoundErrorが表示されます
適切なファイルを適切な場所に配置していますか?コマンドラインから共有パッケージを見つけるようにプログラムを取得するにはどうすればよいですか?
java - パッケージ化されたクラスのNoClassDefFoundError
YouTube Data APIを使用するjarファイルを実行しようとしていますが、APIクラスの1つでNoClassDefFoundErrorが発生します。
代替テキストhttp://img205.imageshack.us/img205/1808/noclassdeffounderror.png
AuthenticationException.classはgdata-core-1.0jarにあります。
代替テキストhttp://img683.imageshack.us/img683/7329/authenticationexception.png
gdata-core-1.0jarがクラスパスに追加されました。
代替テキストhttp://img24.imageshack.us/img24/2195/classpathe.png
私は何が間違っているのですか?