0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

仮想環境でsbtを起動して、IntelliJでデバッグする

Last updated at Posted at 2019-05-23

IntelliJで仮想環境のsbtに接続してデバッグする方法

まとめ

sbt起動オプションに 0.0.0.0:をつけて、InttelJのEdit Configurations でremote指定

sbt -jvm-debug 0.0.0.0:5005

内容

リモートのデバッグ設定自体は、$shibayu36->blog; とかでできるのだけど、仮想環境で立ち上げたsbtにアタッチしようとすると "Connection refused"になり接続できない。

切り分け

  • jdbコマンドで色々試した
  • ゲストOSでsbt 起動
$ sbt -jvm-debug 5005

ゲストOSの別ターミナルでアタッチ

これはOK

$ jdb -attach 5005

これもOK

$ jdb -connect com.sun.jdi.SocketAttach:hostname=localhost,port=5005

ホストOSのターミナルでアタッチ

  • Connection refusedで失敗

$ jdb -connect com.sun.jdi.SocketAttach:hostname=192.168.1.2,port=5005

ゲストOSでIPアドレスを指定

  • Connection refusedで失敗

$ jdb -connect com.sun.jdi.SocketAttach:hostname=192.168.1.2,port=5005

解決

  1. localhostからの接続しか受け付けないようなのでそれを調査
  2. LISTENポートを調査
$  netstat -l | grep 5005
tcp        0      0 localhost:5005          0.0.0.0:*               LISTEN     

対応方法

  • sbt起動時のオプション変更
sbt -jvm-debug 0.0.0.0:5005

成功!

> $ jdb -connect com.sun.jdi.SocketAttach:hostname=192.168.1.2,port=5005

参考

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?