問題タブ [jdb]

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.

0 投票する
0 に答える
245 参照

java - Android: startService は java.lang.RuntimeException で終了します - jdb でデバッグするには?

バックグラウンド スレッドを実行する単純なアプリを作成しようとしています。目的は、携帯電話のバッテリーの状態など、いくつかのデータをペブル ウォッチに送信することです。

私はここを見ました: https://developer.android.com/training/run-background-service/create-service.html

いくつかのコードを書きました(ここでは「インポート」をスキップしました):

コンパイル済み (「ant -q debug」)、電話にインストール済み (adb install ...)、これは Moto G lollipop です。アプリを実行するとクラッシュします。startService() を削除しても問題はありません。何が起こっているのかjdbを介して調べてみましたが、これしか表示されません:

「すべて見る」は、次のようなバックトレースを出力します (最後の 2 つは 10 回のように繰り返されます)。

問題は、そのような問題をデバッグする手法は何ですか? コードに明らかに間違っているものはありますか?

0 投票する
1 に答える
304 参照

java - MATLAB で Java をデバッグする - jdb が見つからない

hereの手順を使用して、matlab 内で Java アプリケーションをデバッグしようとしています。

Matlab が正常に起動し、エコーが発生します。

デバッグを有効にして JVM を起動しています。

「jdb -connect com.sun.jdi.SocketAttach:port=4444」を使用して、デバッガをアタッチします。

しかし、デバッガーをアタッチしようとすると、次のようになります。

>> jdb -connect com.sun.jdi.SocketAttach:port=4444

タイプ「char」の入力引数に対して未定義の関数「jdb」。

私は何を間違っていますか?

0 投票する
0 に答える
231 参照

java - Java デバッガー - ショートカット キー

まとめ: ハングしているプログラムを終了するには jdb ショートカット キーが必要

詳細: コマンド ラインから jdb を使用しています。「ArrayIndexOutOfBoundsException」が引き続き発生します。これにより、jdb がハングアップします。プログラムを終了するキーボード ショートカット キーが必要です。現在、コマンドプロンプトを閉じて終了する必要があります。これにより、余分な労力がかかります。ありがとうございました。

0 投票する
1 に答える
1074 参照

java - Java の JDB (および Eclipse) は、多くのスレッドを持つリモート JVM に接続するとハングします (つまり、TCPIP を介してスレッドのデバッグ情報を送信します)。

問題の説明

皆さんこんにちは、

今日、新しいサーバーへのリモート デバッグで問題が発生しました。最初は、Eclipse がリモート JVM に接続するのに時間がかかっているように見えました。しかし、いくつかの調査の後、私jdbは同様の問題を抱えていることに気付きました。いくつかの掘り出し物がこれを見つけました...

リモート JVM への接続は問題ありません。どちらのデバッガーも、数秒以内にソケット接続を適切に確立します。jdbコマンドも処理します。ただし、リモート デバッガが正常に接続した後、Sun Java 1.7.0_60-b19 JVMスレッド デバッグ情報 (JVMTI/JDWP) を TCPIP 経由でネットワーク経由で送信するときに、 がハング (または送信が非常に遅く) しているように見えます。

リモート JVM のスレッドを一覧表示することが問題のようです。JDB のthreadsコマンドがハングするか、実行が非常に遅くなります。リモート JVM の負荷は妥当であり、ブレークポイントは設定されていません。この JVM では多くのスレッドが同時に実行されており (~2005 スレッド)、WAN の遅延が発生する可能性がありますが、それでもリモート デバッガーを正常に使用する方法が必要です!

観察。これは、マシンがWAN 上の地球の反対側にあるため、JVM の Java Debug Wire Protocol (JDWP) 実装による TCPIP を介した非効率的なスレッド情報の送信に関連していると推測しています。ただし、同じマシンへの Windows リモート デスクトップ接続は、許容できる速度とパフォーマンスを備えています。それを考えると、Eclipse を 45 分間待たなければならない、またはJDBJVM のスレッド情報を一覧表示する必要があるのは受け入れられず、おそらくバグ (または非常に不十分に実装された機能) であると思われます。

もしかして関係?

  1. http://bugs.java.com/bugdatabase/view_bug.do?bug_id=6401245 - これは修正されたようで、もう問題にはなりません。さらに、JVM は Linux ではなく Windows Datacenter で実行されています。
  2. http://www.eclipsecon.org/2013/comment/reply/1153.html - 可能な解決策ですが、SAP JVM が必要ですか?
  3. https://github.com/vpotapev/jbreakpoint - オープン ソースの jdb インターフェイスですが、Eclipse の問題は修正されていません。

質問。JVMを効果的にリモートデバッグできるように、スレッドデータの送信をより効率的にする方法を知っている人はいますか? これは JVM の Java Debugging Wire Protocol (JDWP) のバグですか?

問題の詳細

Java バージョン:

アプリケーション・サーバー。Weblogic 10g で発生します。IBM WebSphere 8.5 でも発生

エクリプス。デバッグ ビューにスレッド情報を入力しようとすると、Eclipse リモート デバッグが無期限にハングします。

JDB - リモート。コマンドでスレッドを一覧表示すると、 Java のjdbリモート デバッガーが 10 分以上ハングしますthread。次に、それらを非常にゆっくりと一覧表示します (1 秒あたり 1 スレッド、すべてを一覧表示するには 33 分かかります)。

JDB - ローカル。Java のjdbリモート デバッガーはthreads、JVM のローカル マシンで実行すると、コマンドを 3 秒で実行します。

0 投票する
1 に答える
207 参照

java - Java Debugger は中断することなくアプリケーションを実行します

ユビキタスな HelloWorldApp.java ファイルがあります

走る:

それから私は実行します:

私は得る:

私はタイプする:

プロンプトが表示された場所

それから私は得る

私はタイプする:

プロンプトが表示された場所

それから私は得る

最後のプロンプトでは何も入力せず、中断せずに終了しました。私の質問は、なぜそれらの Throwable 行が出力されたのか、なぜデバッガーが指定したブレークポイントで停止しなかったのかということです。

0 投票する
1 に答える
447 参照

hadoop - jdb を使用して Hadoop jar ジョブをデバッグする方法は?

次のような Hadoop ジョブを実行しています

私の質問:どうすればこれをデバッグできjdbますか? リモートデバッグは必要ありません。ジョブは、デバッグしたいマシンと同じマシンで実行されています。

0 投票する
0 に答える
456 参照

java - DDMS: jdb を DDMS ポートに接続できません

私はAndroidを学んでおり、antを介してIDEを使用せずにアプリケーションを開発しています。Ant debug でアプリケーションをビルドし、adb でエミュレーターにデプロイします。開発者設定からデバッガーがアタッチされるのを待つようにアプリをマークしました。ただし、jdb を DDMS ポートに接続しようとすると、

私は試した

エミュレーター上のアプリには、デバッガーが接続するのを待っているダイアログが引き続き表示されます。

0 投票する
1 に答える
107 参照

maven - jdbからデバッグできるようにmavenでプロジェクトをコンパイルする方法は?

私は学ぼうとしていますjdb。私はmavenプロジェクトを持っています。ソースコードが表示されないコマンドをjdb使用すると、デバッグを試みました。list次のメッセージが表示されます。

jdbでは、プロジェクトを後でデバッグしてソースコードを表示できるように、プロジェクトをmavenでコンパイルするにはどうすればよいですか?