所以我打算在Intellij Community Edition上调试我的Solr过滤器插件.在我使用此命令从命令提示符运行程序后
java -jar start.jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8983
Run Code Online (Sandbox Code Playgroud)
我用这个配置启动了我的Intellij调试器:
Transport : socket
Debugger mode : attach
Host : localhost
Port : 8983
Run Code Online (Sandbox Code Playgroud)
但是当我运行调试器时出现了这个错误:
Error running Debugger: Unable to open debugger port (localhost:8983):
java.io.IOException "handshake failed - connection prematurally closed"
Run Code Online (Sandbox Code Playgroud)
知道如何解决这个问题吗?
由于最新的 (7.0.1) docker 映像,无法将远程调试会话连接到容器内运行的 JVM。
我已经推出:
docker run \
-p 9001:8080 \
-p 9100:9100 \
-e KEYCLOAK_USER=keycloak \
-e KEYCLOAK_PASSWORD=password \
jboss/keycloak:7.0.1 \
-b 0.0.0.0 \
--debug 9100
Run Code Online (Sandbox Code Playgroud)
然后尝试使用此 VSCode 配置连接调试会话:
{
"type": "java",
"name": "Debug (Attach) - Remote",
"request": "attach",
"hostName": "localhost",
"port": 9100
}
Run Code Online (Sandbox Code Playgroud)
并收到以下消息:
Failed to attach to remote debuggee VM
Reason:java.net.SocketException: Connection reset
Run Code Online (Sandbox Code Playgroud)
顺便说一句,同样适用于带有 6.0.1 和 7.0.0 docker 图像的 Keycloak。
我怀疑这是迁移到自 Keycloak 7.0.1 以来使用的新 ubi8-minimal 基础镜像的副作用
关于如何解决这个问题的任何线索?
问候,