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启动异常

一、问题由来

最近有个朋友在学习使用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为后缀的文件。

自己就在思考,这两类文件都是可执行文件,有没有可能是文件读取操作触发了某种系统的安全限制之类的。而且朋友也

说了,在操作的过程中火绒一直在提示一些拦截信息。自己就在思考有没有可能是系统安全软件做了一些处理,限制之类的呢。

自己就让朋友关闭掉各种安全软件试一试,结果发现服务立马运行正常。看到此,原来才知道是火绒安全搞的鬼,太坑人啦!!!