問題タブ [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 - OSX Yosemite 上の Netbeans: Tomcat をデバッグモードで起動すると失敗する
OSX 10.10.3 で自作を使用して Tomcat8 をインストールしました。
tomcat-users.xmlを構成した方法は次のとおりです。
Tomcat8 は Netbeans から起動し、デバッグモードの場合を除き、war を正しくデプロイします。
デバッグ モードで起動すると、次のエラーが表示Starting of Tomcat Failed
され、Tomcat ログに次の出力が生成されます。
ネイティブ メソッドの致命的なエラー: JDWP トランスポートが初期化されていません、jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197) エラー: トランスポート エラー 202: バインドに失敗しました: アドレスは既に使用されています エラー: JDWP トランスポート dt_socket は初期化に失敗しました、TRANSPORT_INIT(510) JDWP 終了エラー AGENT_ERROR_TRANSPORT_INIT(197) : トランスポートが初期化されていません [debugInit.c:750]
私には、これはダバグポートが別のプロセスによってロックされていると言っています。catalina.shファイルに基づくと、JPDA_ADDRESS="localhost:8000" です。
私は Mac を初めて使用するので、この場合、Windows では、Process Explorer で実行されている Java プロセスを強制終了します。
コマンドを実行することを提案している記事や、コマンドを使用して PID を検索して強制終了するnetstat
ことについて言及している記事を見つけました。lsof
ただし、どちらのコマンドもポート 8000 の結果をレンダリングしなかったため、ポートを使用しているアプリを閉じようとしてログアウトしました。
再度ログインした後も問題は残ります。何を与える?私が見つけていない秘密のマックトリックは何ですか??
java - Java リモート デバッグのオーバーヘッド
リモート デバッグの追加のオーバーヘッドが気になります。次のパラメーターを指定して、HotSpot を使用してアプリケーションを開始します。
はるかに古いバージョンの HotSpot でパフォーマンスに大きな影響があると聞きましたが、私のアプリケーションは現在 Java 8 を使用しており、最新の情報を見つけることができません。
tcp - Java Debug Wire Protocol のリモートでコードが実行される脆弱性 - joss
当社のセキュリティ チームは、jboss の JDWP に関する以下の問題を発見しました。どうすればこれを修正できますか?
-Djavax.net.ssl.trustStorePassword=changeit -Dhttps.protocols=TLSv1 -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun .rmi.dgc.server.gcInterval=3600000 -Dorg.jboss.boot.log.file=/
タイトル: Java Debug Wire Protocol のリモートでコードが実行される脆弱性
重大度: クリティカル
説明
影響を受けるホスト
- IP アドレス:tcp/8787
リモート サーバーは Java Debug Wire Protocol サービスを実行しています。サービスが有効な場合、認証は必要ありません。
この脆弱性は、悪意のあるユーザーによって悪用され、任意のコードを実行される可能性があります。
修復
サービスを無効にする
コンセプトの証明
Java Debug Wire Protocol のリモートでコードが実行される脆弱性が、TCP 経由でポート 8787 で検出されました。
ありがとう、ヴィシュヌ
tomcat6 - Tomcat インスタンスの起動に失敗しました: エラー: トランスポート エラー 202: バインドに失敗しました: アドレスは既に使用されています
ubuntuボックスにTomcatを共有してインストールした2つのTomcatインスタンスがあります。各サーバーには、独自のシャットダウン ポートと独自のリスナー ポートがあります。
2 番目のサーバー (いずれか 1 つ) を起動すると、次のエラーが表示されます。
これらのサーバーをデバッグ モードで実行するつもりはありません。追加の起動オプションは提供されません。
ここで他のスレッドを確認しましたが、どの解決策もうまくいきません。関係するポートで netstat を実行しましたが、何もありません。
java - JDWP でキャッチされていない例外をキャッチする
Androidでキャッチされていない例外をキャッチするためにJDWPを使用しようとしています。
次のさまざまな組み合わせを試しましたが、例外イベントは発生せず、シングル ステップ イベントのみが発生します。
複合イベントを取得していません。いずれの場合も、イベント カウントは「1」です。
EventRequest セットが正しく設定されている:
モディファイアありとなしで試してみました。「Ljava/lang/Throwable;」のようにすべて「0」のように異なる referenceTypeID を使用します。など。また、カウント修飾子も使用しようとしました。また、CLASS_MATCH を使用した CLASS_PREPARE。
例外を引き起こしているステートメントをステップオーバーした後、Java は例外をキャッチして出力し、OS の「Landroid/app/ActivityThread;」にジャンプします。performResumeActivity()
ただし、例外イベントは発生しません。
キャッチされていない例外をキャッチできるようにしたいのですが、特定の例外をキャッチすることさえできません。
「catch」コマンドを指定しない場合、jdb は同じことを行います。
私は jdb と Apache Harmony が何をするかを調べてみました。
ありがとう!