前言
今天在使用工作过程中,遇到了一个idea开发工具先关的问题,也是因为解决这个问题耽误了正常搬砖的时间,同时也由于远程办公网速比较卡的原因,导致心情比较心烦气躁,所有针对这个心烦的问题,在这里总结一下,给后续自己提个醒;
问题描述:
在正常工作中,idea
工具突然打不开(file->open
)项目了,试了不同的项目都打不开,之前开发工具(功能)都是好好的
(这句话是周围同事在定位问题时经常说的一句话),这个问题也是在工作中第一次遇到;
项目:springboot
+maven
解决过程:
1)首先想到的可能存在的问题点是使用idea
打开的项目名都相等的问题;但是之前打开相同名称的项目是没有问题的,虽然知道是这个原因的可能性不大,但是抱着宁可错杀一千不放过一个的原则,尝试了一下;
a、打开.idea目录
->.name文件
,把.name
里面的名字改掉;
b、file->Invalidate Caches
清理缓存,重启idea
;
结果:预期所料,问题还存在
2)修改/etc/hosts
文件
分析idea open项目日志
查询日志 点击【Help-Show Log in Explorer
】
首先看到的日志报错
Caused by: java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: .ConnectException: Connection refused: connectat sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619)at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216)at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:342)at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)at com.intellij.execution.rmi.RemoteProcessSupport.a(RemoteProcessSupport.java:257)at com.intellij.execution.rmi.RemoteUtil.executeWithClassLoader(RemoteUtil.java:232)at com.intellij.execution.rmi.RemoteProcessSupport.b(RemoteProcessSupport.java:255)at com.intellij.execution.rmi.RemoteProcessSupport.acquire(RemoteProcessSupport.java:161)at org.jetbrains.idea.maven.server.MavenServerManager.create(MavenServerManager.java:172)... 36 moreat com.intellij.execution.rmi.RemoteProcessSupport.a(RemoteProcessSupport.java:257)at com.intellij.execution.rmi.RemoteUtil.executeWithClassLoader(RemoteUtil.java:232)at com.intellij.execution.rmi.RemoteProcessSupport.b(RemoteProcessSupport.java:255)at com.intellij.execution.rmi.RemoteProcessSupport.acquire(RemoteProcessSupport.java:161)at org.jetbrains.idea.maven.server.MavenServerManager.create(MavenServerManager.java:172)... 36 moreat .Socket.connect(Socket.java:589)at .Socket.connect(Socket.java:538)at .Socket.<init>(Socket.java:434)at .Socket.<init>(Socket.java:211)at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:40)at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:148)at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:613)... 45 more-11-25 18:36:22,336 [ 105752] WARN - ution.rmi.RemoteProcessSupport - java.rmi.NotBoundException: _DEAD_HAND_
通过查询Connection refused to host: localhost; nested exception is:
报错原因,网上更多的是本地/etc/hosts
配置localhost
错误导致的,虽然知道这个原因的概率也很小,但是也尝试修改了一下;
进入C:\Windows\System32\drivers\etc
文件夹下,打开hosts
文件,新增127.0.0.1 localhost
配置,如下:
idea
重新open project
,同样失败;
3)maven
访问仓库网络问题
继续分析日志,又发现新的日志
-11-25 18:45:08,027 [ 631443] WARN - ution.rmi.RemoteProcessSupport - at java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:179) -11-25 18:45:08,027 [ 631443] WARN - ution.rmi.RemoteProcessSupport - at com.sun.proxy.$Proxy1.ping(Unknown Source) -11-25 18:45:08,027 [ 631443] WARN - ution.rmi.RemoteProcessSupport - at com.intellij.execution.rmi.RemoteServer.start(RemoteServer.java:90) -11-25 18:45:08,027 [ 631443] WARN - ution.rmi.RemoteProcessSupport - at org.jetbrains.idea.maven.server.RemoteMavenServer.main(RemoteMavenServer.java:22) -11-25 18:45:08,027 [ 631443] WARN - ution.rmi.RemoteProcessSupport - Caused by: .ConnectException: Connection refused: connect
发现日志中很多和远程调用相关的日常日志,而且和maven有关系,所以就考虑是不是请求阿里maven仓库异
常导致的,突然想到整个开发环境今天和以往唯一不同的是设置了其它网络的代理服务(在定位其它局域网问题时,通过Proxifier代理工具
访问其它的局域网);
顺着这个思路,我们先把Proxifier代理服务
先关闭掉
重启
idea,open project(项目),果然,项目加载成功了
!
由此可知,远端的maven仓库
访问异常,也会导致idea open
项目异常,即idea
开不开项目的问题;
==注:具体原因后续文章再详细分析吧,今天先把这个问题做一下记录