如何卸载tomcat:先停服务再删目录清理残留

如何卸载tomcat:先停服务再删目录清理残留

上次折腾公司测试服务器的时候熬到后半夜,翻了十几篇互相抄的帖子,才搞明白如何卸载tomcat,之前总以为这种绿色软件直接删文件夹就完事,结果搞的后面重装的时候全是莫名其妙的冲突,连端口都占着放不出来。

那天本来是要给新项目搭环境,旧版本的tomcat用了快两年,插件堆的乱七八糟,想着干脆卸了装个干净的新版本,也没查什么步骤,找到D盘根目录下的apache-tomcat文件夹,右键直接删除,清空回收站的时候还觉得挺利落,省的留一堆没用的垃圾。

服务没停,删什么都是白搭。

装新版本的时候才出的问题,安装向导走到一半就弹提示,说系统里已经存在tomcat服务,端口8080被占用,去任务管理器翻了三遍,进程里连个java的影子都没有,资源监视器里查端口,占着8080的是个系统级的服务,名字还是旧版本的tomcat8,点进去看路径,已经是无效的了,就是之前删文件夹的时候没停服务,服务项直接卡在注册表里了。

折腾好久才搞明白,首先得去服务里把对应的tomcat服务停掉,要是服务已经因为文件删了启动不了,就直接用命令删,win+r开cmd,输sc delete 服务名,回车之后服务项就清掉了,这时候再去删安装目录,才不会有残留的进程占着文件删不掉,之前就是跳过了这一步,删文件夹的时候有几个dll文件正在被服务调用,根本删不干净,留在系统里占着端口。

其实还有环境变量的问题,之前装的时候配的CATALINA_HOME,要是不删的话,新装的版本会自动读旧的路径,启动的时候还是指向已经删掉的文件夹,当时就是没注意这个,装完新的tomcat一启动就报错,翻了半小时日志才发现是环境变量还指着旧的目录,去系统变量里删掉对应的项,再重启一下cmd就好了,注册表的话其实不用特意去搜,只要服务删干净了,大部分残留都会跟着清掉,实在不放心的话就搜一下tomcat的项,删掉对应版本的就行,别乱删别的。

当时还试过用控制面板的卸载程序,结果旧版本的tomcat根本没在卸载列表里,找了半天也找不到入口,后来才知道很多免安装版的tomcat本来就不会写进卸载列表,控制面板里根本找不到,之前还傻呵呵的在卸载程序里翻了十几分钟,以为是自己系统出问题了。

反正现在卸这类服务类的软件,第一件事就是先停服务,再删东西,顺序反了只会给自己找麻烦,之前还试过卸mysql的时候也犯过一样的错,直接删文件夹结果服务卡了半天才清掉,说起来都是粗心闹的,总觉得删文件就是卸载,忘了这些后台跑的服务还有一堆东西写在系统里。

窗台上的多肉好久没浇水,叶片皱巴巴的缩成一团。

了解更多百科知识请访问 百科