私はハックしていましたが、しばらくの間グーグルグーグルで行きましたが、さまざまなアプリケーションサーバーを使って古いバージョンのintellij用に書かれたようないくつかのstatckオーバーフロースレッドが見つかりました。彼らはあなたを教えて上記の1または他の後に続いてIntelliJでリモートJettyをデプロイ&デバッグする12
Error occurred during initialization of VM
Could not find agent library: libjdwp:transport.jnilib (searched /Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk/Contents/Libraries:/System/Library/Java/Extensions:/Library/Java/Extensions:.)
:通常、彼らは
-agentlib:jdwp:transport=dt_socket,address=51887,suspend=n,server=y
のようなものを使用することを提案している。しかし、私はこれを取得
java -Xdebug -Xrunjdwp:transport=dt_socket,address=51887,suspend=n,server=y
One answerを入力するように指示します"Edit Configurations> jetty> remote and localhost 51887"(ポート番号が異なる)のようなもの
しかし、12で、あなたがリモートを選択した後に着陸するページには、たくさんのオプションがあり、JNDIポートを要求しています。別のタブのjdwpポートではなく、上記のjdwpパラメータを示します。 JNDIポートのビットを研究する
は、一般
-Dcom.sun.management.jmxremote= \
-Dcom.sun.management.jmxremote.port=1099 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false\
は私があまりにもやった...あなたのコマンドラインに次のように引数を追加するための指示を与えると私は、Javaで開催されたポート1099(使用してlsofを見ることができます)そして私は1099にtelnetすることができるので、私はJVMが聞いていることを知っています。 (私たちは、誰もパスワードなしでネットワーク上の任意のJavaコードをあなたのコンピュータにインストールするためのポートを開くことを心配しないようにしようとしている)
しかし、私がしようとするとIntellij私は(彼らは判読不能です)のwiresharkでポート1099をスヌープするとき、私は1099上でのJava RMI通信を見ることができます
:展開とデバッグ、それは私に次のようなメッセージを与えます。明らかに、コミュニケーションはIntellijにとっては満足のいくものではないので、私はJettyにそれをうまくさせるために必要なことがあるかどうか疑問に思っています。 Jettyのバージョンを変更することは現在オプションではないので、そこに行かないように注意してください。
また、アーティファクトを削除してmakeを無効にして、デバッガに接続しようとしましたが、同じ赤いバルーンとエラーメッセージが表示されるため、JNDI(ポート1099)の部分が必要です。
誰かが私が間違っているのを見ているのですか、これを動作させるために何か他のことを知っていますか?
(それはこれに似たものである場合、私は思ったんだけど:http://youtrack.jetbrains.com/issue/IDEA-65746 JBossの問題)
編集:this google groups postへおかげで、私はあなたがいない場合、デバッガが接続されて得ることが可能であることを発見しましたEdit Configurations> +> jetty> remoteを指定しますが、Edit Configurations> +> remoteを選択しますが、デバッグとデプロイは後で実行するので、半分の解決策です。
私はwireshark経由で1099への接続が見えるという事実は、DNSの問題の可能性を排除すると思います。明らかに接続が行われましたが、通信が失敗しました – Gus