Error running 'Tomcat 8.5.27': Unable to open debugger port (127.0.0.1:2887): java.net.SocketException "Interrupted function call: accept failed"-火绒安全搞的鬼
火绒安全-导致的tomcat8启动异常
一、问题由来
一位朋友最近在学习JavaWeb开发,在学习使用IDEA配置tomcat 8.5.99的时候,使用一切都正常,直到学习到使用Servlet实现文件
下载功能的时候,出现问题。写了一个简单的Servlet用来测试文件下载,直接把路径放在浏览器中测试的时候,
可以正常下载。可是不久后tomcat无法正常启动,这就怪了。还抱了一个奇怪的错误如下,
Error running 'Tomcat 8.5.27': Unable to open debugger port (127.0.0.1:2887): java.net.SocketException "Interrupted function call: accept failed"
使用百度翻译一下,大致意思就是 运行“Tomcat 8.5.27”时出错:无法打开调试器端口(127.0.0.1:2887):java.net。SocketException“函数调用中断:accept失败”。
二、问题分析
测试文件功能下载前,使用一切正常,可是在测试文件下载功能之后,就出现这个奇怪的问题。自己猜想可能是项目读取文件的操作,
触发了某种windows的安全规则之类的。自己让这个朋友去单独启动tomcat服务器试一下,发现直接点击startup.bat也是直接提示无法访问该文件。
真是奇了怪了,怎么会出现这种问题呢。
三、解决方案
自己把tomcat报的这个错,使用搜索引擎搜索,看能否找到解决方案。
查看博客1: https://my.oschina.net/u/2411391/blog/3153222
给出的原因有两点,端口被占用或者文件权限不足。
自己让朋友尝试着改端口,发现还是不能正常启动。文件权限不足,自己尝试着以管理员身份运行,结果发现还是不行。
查看博客2:https://www.cnblogs.com/ljmm/p/13856721.html
处理办法是杀掉端口被占用的进程。自己让他尝试着去试一下,发现还是没用。
查看博客3:https://blog.51cto.com/u_14122613/4781940
重启IDEA,重启电脑后发现还是出现一样的问题。
这就很尴尬啦。
尝试办法一:自己让朋友尝试着重新配置一个tomcat,发现还是不行。
尝试办法二:自己让朋友尝试着重启电脑,问题仍然未解决。
不过通过上面的操作,发现新问题。在解压新tomcat的时候,会报一些错误提示,比如无法复制粘贴.bat为后缀的文件,
或者是以.js为后缀的文件。
自己就在思考,这两类文件都是可执行文件,有没有可能是文件读取操作触发了某种系统的安全限制之类的。而且朋友也
说了,在操作的过程中火绒一直在提示一些拦截信息。自己就在思考有没有可能是系统安全软件做了一些处理,限制之类的呢。
自己就让朋友关闭掉各种安全软件试一试,结果发现服务立马运行正常。看到此,原来才知道是火绒安全搞的鬼,太坑人啦!!!