簡體   English   中英

Docker容器中的Intellij CE 2018.2 + SBT:遠程調試斷點無法正常工作

[英]Intellij CE 2018.2 + SBT in docker container: Remote debug breakpoints not working

我有一個Spark應用程序,我有許多實現的測試。 我在Docker容器內的SBT shell中運行此測試。 我需要通過從Intellij連接來調試應用程序,即使它連接到正在運行的SBT shell實例,也會完全忽略斷點。

我將fork / test設置為false。

還使用此cmd在容器內啟動SBT shell:

  • export SBT_OPTS =“ - agentlib:jdwp = transport = dt_socket,server = y,suspend = y,address = 5005 -Xmx4G”

  • 其次是命令:sbt。

它顯示消息

在地址:5005收聽傳輸dt_socket

SBT shell暫停,直到Intellij調試器連接到指定的端口。

現在我轉到Intellij Remote調試器,調試控制台顯示以下消息:

連接到目標VM,地址:'localhost:5005',transport:'socket'

最后,SBT恢復並開始下載依賴項。

當我跑:

test:testOnly fully.qualified.class.name

並提交斷點,執行測試用例但忽略所有斷點。

我不知道還有什么可嘗試的! 請幫忙!

除了將test / fork設置為false之外,fork一般也應該設置為false。 這包括跑步,建築等

此外,請確保SBT_OPTS中的掛起標志設置為yes,以便等待Intellij Remote Debugger連接到它以執行測試。

就是這樣,這就是我從docker運行時獲得斷點的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM