无法在IntelliJ中打开调试器端口

无法在intellij中打开调试器端口。 端口号9009与在应用程序的配置文件中设置的端口号匹配。

 -XX:MaxPermSize=192m -client -XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log -Djava.endorsed.dirs=${com.sun.aas.installRoot}/modules/endorsed${path.separator}${com.sun.aas.installRoot}/lib/endorsed -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy -Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf -Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as -Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.jks -Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot}/config/cacerts.jks -Djava.ext.dirs=${com.sun.aas.javaRoot}/lib/ext${path.separator}${com.sun.aas.javaRoot}/jre/lib/ext${path.separator}${com.sun.aas.instanceRoot}/lib/ext -Djdbc.drivers=org.apache.derby.jdbc.ClientDriver -DANTLR_USE_DIRECT_CLASS_LOADING=true -Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory -Dosgi.shell.telnet.port=4766 -Dosgi.shell.telnet.maxconn=1 -Dosgi.shell.telnet.ip=127.0.0.1 -Dfelix.fileinstall.dir=${com.sun.aas.installRoot}/modules/autostart/ -Dfelix.fileinstall.poll=5000 -Dfelix.fileinstall.debug=1 -Dfelix.fileinstall.bundles.new.start=true -Dorg.glassfish.web.rfc2109_cookie_names_enforced=false -XX:NewRatio=2 -Xmx2048m  

IntelliJ中的配置:

在此处输入图像描述

当我尝试为此应用程序启用远程调试时,会出现以下错误: 在此处输入图像描述

如果您的端口已被其他程序使用,则可能必须更改调试器端口。 为此:

  • 编辑配置
  • 远程>远程调试在左侧列表中
  • 配置选项卡,设置部分
  • 端口:在此处更改端口

将以下参数debug-enabled =“true”添加到glassfish配置中的此行。 例:

  

启动和停止使用此配置的glassfish域或服务。

我希望你的问题现在已经解决了。 如果没有,试试这个…看起来你的app和IDEA都有server=y 。 IDEA应该是server=n 。 此外,(IDEA)客户端应具有包含主机名和端口的address=127.0.0.1:9009 ,例如, address=127.0.0.1:9009

我有同样的问题,这个解决方案也为我做了诀窍:如果您使用此主机名,请在Intellij Debug配置中提供IP 127.0.0.1而不是主机名“localhost”。

这个对我有用 – 如果问题仍然存在(如果你没有使用glassFish服务器),那么关闭你的JIdea并停止服务器。 这将禁用端口连接。 然后启动您的服务器和JIdea,这将启动与端口的新连接,解决问题。

对我来说,问题是catalina.sh没有执行权限。 Intellij中出现“无法在intellij中打开调试器端口”消息,但它有点掩盖了之前日志中出现的“无法执行catalina.sh”错误。

答案很简单,我也遇到了问题,最后我得到了完美的解决方案。 使用以下配置 创建调试 创建远程调试首先通过调试运行。 它为socket 5005提供waitng,然后使用远程调试运行

尝试连接telnet,如果连接,则显示如下:

$ telnet 10.238.136.165 9999试用10.238.136.165 ……连接到10.238.136.165。 逃脱角色是’^]’。 外部主机关闭连接。

如果端口不可用(因为其他人已连接到它或端口未打开等),那么它会显示如下所示的内容:

$ telnet 10.238.136.165 9999试用10.238.136.165 … telnet:连接到地址10.238.136.165:连接被拒绝telnet:无法连接到远程主机

所以我认为需要看看是否:

  • 应用程序是监听端口的属性

  • 或其他人已经连接到它

也尝试首先连接那个m / c本身,如$ telnet localhost 9999

设置MAVEN_OPTS。 它应该工作!!

export MAVEN_OPTS =“ – Xdebug -Xnoagent -Djava.compiler = NONE -Xrunjdwp:transport = dt_socket,address = 4000,server = y,suspend = n”

mvn spring-boot:运行-Dserver.port = 8090

使用给定命令运行Spring Boot应用程序,以便在服务器启动端口8090时启用端口6006上的调试:

 mvn spring-boot:run -Drun.jvmArguments='-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=6006' -Dserver.port=8090 

Tomcat已在运行,可能会发生此错误。 因此,如果您已要求Intellij启动它,请确保Tomcat未在后台运行(默认)。

另外,检查完整输出窗口是否有更多错误。 一个更有用的错误可能先于此错误(就像我刚刚配置的情况一样)

您必须设置CHMOD + x(执行* .sh或* .bat文件)。 例如,我正在使用macOS

 cd /Users/donhuvy/Documents/tools/apache-tomcat-9.0.12/bin sudo chmod +x *.sh 

然后IntelliJ IDEA和Apache Tomcat运行或调试就好了。

  1. 在启动服务器之前设置的glassfish \ domains \ domain1 \ config \ domain.xml中: