您现在的位置是:首页 > 正文

eclipse远程调试时出现:Failed to connect to remote VM. Connection refused. Connection refused: connect 热门推荐

2024-02-29 14:01:56阅读 0

如图:
这里写图片描述

以下都是在网络中找的解决方案:

解决方案1:服务是在root 账户下启动的,关掉服务杀掉进程,然后用普通用户登录重启服务!(对我无效,因为我的服务不可以用普通用户启动

解决方案2:在Eclipse中找到Run-Debug Configurations-Remote Java Application下找到相应工程在connect的tag下设置port为8000(表示在我这里无效)

如果还不能用的话,你把Remote Java Application下的 WebViewHistory全部删除,不新建,直接Debug运行,这样Eclipse会自动为你创建一个默认的WebViewHistory。(不可以直接debug!亲测)

解决方案3:有可能是防火墙的问题(关闭了防火墙,此问题依旧存在!

解决方案4:因为以前都是可以的,所以百思不得其解,Google了半天,能找到的问题一般也都是因为对方没有开启远程调试端口,所以自然连不上,但是我这里显然不是这个情况。在困惑了好久以后,突然想到会不会是受到了 Eclipse 代理设置的影响?虽然觉得不太可能,因为我的理解是那个代理只是给 Eclipse 本身用的,并不是给通过 Eclipse 启动的应用程序用的。(我这里依旧行不通

解决方案5:这是因为Tomcat还没有启动,或者是没有以Debug模式启动。(当然我这里不存在这个问题

解决方案6:同组其他人独占本连接(同时只能有一个连接执行远程调试),点击disconnect按钮。(我这里依旧不是这个问题

解决方案7:有一点非常重要,先运行应用程序,然后连接它,否则Eclipse会抛出异常”Failed to connect to remote VM. Connection refused”.
  提示一:在JVM DEBUG参数中,有一个参数叫”suspend”,它的取值有两个,“y”或者“n”,如果您刚开始就想调试的话,将参数设置为”suspend=y”,这样Eclipse会远程连接Java应用程序。
  如果你想先运行项目,然后连接Eclipse,那么可以将参数设置为”suspend=n”,这样的话,Java应用程序会正常运行,之后Eclipse会开始远程连接。
  提示二:使用启动脚本输入JVM调试参数,在脚本中使用变量isDebugEnabled或者REMOTE_DEBUG_PORT,当你想远程调试Java应用程序的时候,可以将这个变量导出。整个操作过程非常简单,只需要一次性的安装即可。
  提示三:如果你得到错误提示”Failed to connect to remote VM. Connection refused”或者”Connection refused: connect”,那么可能出现的原因有两种可能。第一是您的Java项目没有运行在远程主机上,第二是输入端口和主机名有误,验证成功后,可以填写完整的主机名。
  提示四:您也要确保本地Eclipse和远程Eclipse运行的是相同的代码库。使用调试选项”-g”可以编译代码,Eclipse可以轻松搜集调试信息,比如本地变量的调试信息,默认情况下,使用调试选项“-g”,类文件可能更大些调试信息。(依旧没有解决我这里的问题

解决方案8:找到tomcat/bin/catalina.bat文件,编辑,在CATALINA_OPTS之前加上下行代码

set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=50001【用来调试的端口号】

保存,重启Tomcat(我这边这个也没能解决我的问题

解决方案9:原因最可能就是 Eclipse 中的 ip地址配置错误(就是这个原因,复制IP地址复制错了,我也是。。。。

解决方案10
估计是网络不稳定,最终还是调试成功了。(这个吗。。。。。

解决方案11:防火墙的问题。把360里面的网页防火墙关掉就好用了。我每次都重新装。这次终于找到原因了。(关闭了360,依旧没有解决问题

结论:以后一定要看清楚最基本的配置,然后一步一步确定自己的结论是否正确,其实,IP地址写错,这个问题应该是第一个就排除的原因,而我却因为某种原因,没有进行检查,以至于浪费了一天的时间!

网站文章

  • 静态代理、jdk、cglib动态代理 搞不清? 看这个文章就懂了

    静态代理、jdk、cglib动态代理 搞不清? 看这个文章就懂了

    老板: 只要负责和客户谈项目// 会见 @Override public void meeting() {System . out . println("和" + name + "谈成了34个亿的合作...

    2024-02-29 14:01:49
  • Java以form-data(表单)的形式调用第三方接口

    Java以form-data(表单)的形式调用第三方接口

    Java以form-data调用第三方接口、所调用的接口中包含文件

    2024-02-29 14:01:40
  • PL/SQL批处理语句:BULK COLLECT 和 FORALL

    PL/SQL批处理语句:BULK COLLECT 和 FORALL

    这种在PL/SQL引擎和SQL引擎之间的控制转移叫做上下文却换,每次却换时,都有额外的开销 请看下图: 但是,FORALL和BULK COLLECT可以让PL/SQL引擎把多个上下文却换压缩成一个,这使得在PL/SQL中的要处理多行记录的SQL语句执行的花费时间骤降 请再看下图: ...

    2024-02-29 14:01:10
  • springboot启动后执行某个方法的三种实现方式,且不影响提供服务 热门推荐

    第一种方式,应该也是最简单的方式 直接在方式上面注入,但是会影响服务提供,比如这个方法要执行五分钟 这五分钟之内是无法提供服务的,这个方法是在服务初始化后之前运行, 所以 此方法运行不结束,服务就无法初始化, 在这过程路也无法提供服务 @PostConstruct public void pingStart(){ System.out.println(" ...

    2024-02-29 14:01:02
  • php加密令牌,Token PHP令牌 Token改进版

    想了解PHP令牌 Token改进版的相关内容吗,在本文为您仔细讲解Token的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:PHP令牌,Token,下面大家一起来学习吧。正是由于使用了ba...

    2024-02-29 14:00:55
  • Linux环境变量配置

    当前用户的PAM环境配置文件,用于设置当前用户的环境变量和启动Shell时需要执行的命令,它也可以影响其他应用程序。当前用户的Bash Shell的配置文件,用于设置当前用户的环境变量和启动Shell...

    2024-02-29 14:00:26
  • 7-3 选择法排序 (25 分)

    本题要求将给定的n个整数从大到小排序后输出。 输入格式: 输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。 输出格式: 在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。 输入样例: 4 5 1 7 6 输出样例: 7 6 5 1 #include int main() { int n,i,k; scanf("...

    2024-02-29 14:00:19
  • Java向上转型与向下转型 最新发布

    Java向上转型与向下转型 最新发布

    ② 为了避免在向下转型时出现ClassCastException的异常,我们在向下转型之前,先进行instanceof的判断,一旦返回true,就进行向下转型。有了对象的多态性以后,内存中实际上是加载...

    2024-02-29 14:00:03
  • Mysql身份认证绕过漏洞(CVE-2012-2122)复现

    Mysql身份认证绕过漏洞(CVE-2012-2122)复现

    当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。也就是说只要知道用户名,不断尝试就能够直接登入SQL数据库。

    2024-02-29 13:59:33
  • 分布式CAP原理:一致性、可用性、分区容错

    分布式CAP原理:一致性、可用性、分区容错

    CAP概念 单机系统由于所有的处理都在单机完成的,所以不存在数据一致性问题,但是如果系统崩溃了,就导致服务不可用。 分布式系统可以实现服务的高可用,现有的大型网站几乎都是分布式的,特别是微服务的出现,...

    2024-02-29 13:59:29