1 回答

TA貢獻1712條經驗 獲得超3個贊
您可以使用以下 JVM-Argument 啟用遠程調試
-agentlib:jdwp=transport=dt_socket,server=y,address=8000,suspend=n
然后你可以附加 Intellij 調試器Run->Attach to process 你的應用程序應該有指定的端口(在這種情況下是 8000)
請參閱此處了解更多信息
對于此示例(Docker-Compose with Wildfly)
environment:
...
JAVA_OPTS: -agentlib:jdwp=transport=dt_socket,server=y,address=8000,suspend=n
...
ports:
- "8000:8000"
...
一般來說
碼頭工人
要在 Docker 中使用,您還必須公開端口
EXPOSE 8000
ENTRYPOINT ["java", "-jar", "-agentlib:jdwp=transport=dt_socket,server=y,address=8000,suspend=n", "/path/to/my/java.jar"]
進而
docker run -p 8000:8000 <image>
IntelliJ(從 2019.1 開始)
這個過程現在可以由 IntelliJ 自動完成 https://blog.jetbrains.com/idea/2019/04/debug-your-java-applications-in-docker-using-intellij-idea/
添加回答
舉報