問題タブ [jdwp]
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 - JUnit テストからの JDWP を使用したリモート デバッグ エラー
私はEclipse Juno with Mavenを使用しており、Jemmyを使用して別のJavaアプリケーションを起動し、イベントキューを介して自動テストを実行するJUnitテストがあります。テスト対象のアプリケーションの制限により、アプリケーションの複数のインスタンスを実行したいので、独自のプロセスで実行する必要があります。
したがって、JUnit テストを実行するメイン クラスは、環境をセットアップし、ProcessBuilder を介してプロセスを作成し、そのプロセスを実行して、同じプロセス/jvm で Jemmy ワーカーとターゲット アプリケーションを生成します。
私の問題は、生成されたプロセスをデバッグしたいのですが、他のすべての Eclipse リモート デバッグ ガイドに従ってもデバッグできないようです。私のプロセスビルダーは次のようになります
指定したポートに関係なく、同じエラーが発生します
私は何十ものポートを試しましたが、使用されていないことがわかっているポートは、JDWP ポートを開いた状態で開始することをプロセスビルダーが拒否するだけです。ですから、これをどのように行おうとしているのかについて体系的な問題があると思いますが、この分野の経験はあまりありません。私はリモートデバッグガイドをほぼ文字どおりにフォローしました。
Java アプリケーションのリモート デバッグ http://javarevisited.blogspot.nl/2011/02/how-to-setup-remote-debugging-in.html
それでも、Address Already in Use エラーは解決しません。何か案は?
java - Eclipse を使用した Java: デバッグ モードが有効になっていますか?
Eclipse を使用して Java でゲームの開発を開始しました。ご存知のように、コーディング中に多くのデバッグを行う必要があります。しかし、次の問題があります。
私のゲームはフルスクリーンです。に遭遇breakpoint
すると(本来あるべきように)停止し、何らかの理由でウィンドウを切り替えることができなくなります(私はWindows 7を使用しています)。Ctrl+ Alt+ "を押しDeleteて「タスク マネージャー」を起動し、Eclipse ウィンドウに切り替えてデバッグを続行できるようにする必要があります。
そこで、フルスクリーンではなくウィンドウモードを使用しようとしました。これでbreakpoint
、Eclipse ウィンドウに遭遇すると (自動的に) フォーカスが得られ、簡単にデバッグできます。
だから私は、デバッグモードである場合に限り、ウィンドウモードになるのは素晴らしいことだと思いました.それ以外の場合はフルスクリーンにする必要があります.
このためには、デバッグ モードかどうかを知る必要があります。thisとthisを読んだ後、使用している VM に依存するため、簡単に確認できないようです。Debug/Run-Configuration
また、Eclipseを使用してVMまたはプログラムの引数を設定する のが最善の解決策のようです。
Eclipse
しかし、この構成をデバッグ モードにのみ使用するようにするにはどうすればよいでしょうか? または、デバッグがオンかオフかを判断するより良い方法はありますか?
java - Maven jgit JDWP 転送エラー
私は最近、maven に jgitflow を使い始めましたが、次の問題があります。
mvn jgitflow:release-start を実行すると、すべて正常に動作し、リリース ブランチが作成され、pom ファイルが更新されます。
mvn jgitflow:release-end を実行しようとすると、次のエラーが発生します。
私の MAVEN_OPTS は次のように設定されています。
8213 ポートが使用されていないことを確認し、何度か変更しましたが、毎回同じ結果が得られました。
任意の支援をいただければ幸いです。ありがとう。
java - Java 8 の組み込み JRE の JDWP
完全な jre または compact3 プロファイルを使用して、jdwp を Embedded Java で動作させる方法を見つけようとしています。どちらの場合も、libjdwp.so を見つけることができません。
このドキュメントによると、JRE の最小 VM オプションを除いて、サポートされるはずです。ARMv5 Linux (linux-arm-sflt) バージョンを使用していますが、これはもう含まれていないのではないでしょうか? EJRE7 にはあったのに、今はなくなって驚いています。誰もこれについて知っていますか?
java - 確定的なポートを使用せずに Yarn で Java アプリケーションをリモートでデバッグする
私はすでにグーグルで検索し、次のオプションを使用してリモート Java アプリケーションのデバッグを有効にすることを知っています。
ただし、私のアプリケーションは Yarn で実行され、1 台のマシンに複数のプロセスが存在する場合があります。そのため、ポートの競合により、Java オプションで確定的なポートを設定できません。Yarn の欠点は、Yarn がポート リソースを管理していないため、未使用のポートがわからないことです。
JMX についても同様の要件があります。幸いなことに、次のように、アプリケーションで JMX サーバーを自分で起動できます。
このstart
メソッドでは、使用可能なポートが見つかるまでポートを試してから、このポートを返します。
そこで、JDWP で同様の API を探しています。事前にご協力いただきありがとうございます。
android - JDWP から Android VM へのパケットをスパイ/キャプチャするにはどうすればよいですか?
私は、JDWP を使用して Android VM と通信する Java デバッガーに取り組んでいます。
私が最も興味を持っているのは、デバイスではなく、デスクトップからエミュレーターへの移行です。デバイスではまったく別の問題であることはわかっているので、デスクトップからエミュレータに移行することに集中したいと思います。
一部の一般的な JDWP パケット コマンドで「ERROR_NOT_IMPLEMENTED」エラーが発生することがわかりました。そのため、既知の動作中のデバッガーからの JDWP パケットをスパイしたり、キャプチャしたりして、どのような組み合わせかをよりよく理解できれば、はるかに簡単になります。彼らが送信しているコマンドの。返事がもらえるのもいいですよね。
Wireshark と WinDump を調べましたが、それらはすべてインターフェイス ベースのようで、どのような設定を使用しようとしても、パケットに関しては何も得られません。
私の質問は、これに使用できるツールはありますか?
ありがとう!
android - JDWP には TCP ACK の使用が必要ですか?
Android 用の JDWP デバッガーを開発しようとしてかなり苦労しましたが、いくつか問題がありますが、TCP ACK を送信する必要があるかどうか疑問に思っていました
Android Emulator に対して jdb を使用したセッションを見ると、jdb から VM に多数の TCP ACK パケットが送信されていることがわかります。
現在、JDWP コマンド以外の追加の TCP 情報パケットを送信して応答を取得しようとはしていませんが、何か特別なことをする必要がありますか?
ありがとう!
java - SBT をデバッグ モードで実行します。「libjdwp:transport.so: 共有オブジェクト ファイルを開けません: そのようなファイルまたはディレクトリはありません」
私はシステムを持っています:
debian-sid(8.0)
sbt(0.13.7)
Java(さまざまなバージョンをテスト済み
1) openjdk 7u75-2.5.4-1
2) openjdk 1.8.0_40-internal-b09
3) オラクル jdk 1.8.0_31-b13)。
デバッグモードでアプリを実行しようとすると
私はいつもエラーが発生します:
デバッグを機能させる方法について何か提案はありますか?
更新: sbt 0.13.6 は正しく動作します。それはバグですか、それとも sbt でデバッガを使用する別の方法ですか?