远程服务启动配置
远程调试java代码需要在java代码启动的时候配置远程调试的端口。而且启动的参数和jdk的版本不一样而不一样。
如果是jdk 8之前的版本
java -agentlib:jdwp=transport=dt_socket,address=8081,server=y,suspend=y
-jar xxx.jar
jdk 8之后 的版本是
java -agentlib:jdwp=transport=dt_socket,address=*:8081,server=y,suspend=y -jar xxx.jar
IDEA配置启动
上面是java被调试的jar包启动的端,下面是我们在本地的idea配置远程服务。
在configuration的配置里面,+里面配置,选择remote .在右边的,随便配置一个name 满足,区分你的调试即可。configuraation 里面 debugger model选择 Attache to the remote .Host 里的配置就是你远程调试jar包的服务器地址,Port是在上面启动参数的address字段配置,比如8081. 在Command line agreement for remote JVM : 的右边根据你服务器安装的jdk版本选择,下面的参数框会根据不同的jdk版本而变化。然后是下面的Use model classpath 选择本地调试的modules项目,然后apply保存。
调试
调试时候,如果服务器jar启动的时候,只会打印出,端口等待远程调试的日志记录。
然后就是本地IDEA启动remote 调试。如果启动后,提示连接错误,那么请检查端口或者host是否配置和jdk版本的问题。
如果都没有问题,那么访问远程的jar的服务,本地会进入调试状态。
网友评论