JavaWeb之问题集(2) —— macOS下IDEA启动Tomcat报错:error=13, Permission denie 或 Socket closed

一. 问题描述

从Apache新下了一个Tomcat以后解压在目录下面,IDEA配上以后就准备开始启动,但是发现使用Debug启动项目的时候会报错无法启用端口。
然后我在设置里修改了Debug的端口号,然后再尝试,报错依旧,我想还能这么巧正好端口被占用了么?然后检查了对应端口,发现并没有被占用。

当我使用Run方式启动项目的时候,问题就暴露出来了:Permission denied 。文件目录权限不足。这是macOS/Linux使用过程中经常的问题了。
Debug:

Run:

二. 解决方案

既然已经发现问题所在,直奔主题好了。
启动终端,使用路径跳转命令到Tomcat的bin目录下。使用 ls -l 命令查看当前目录下文件的权限。

很明显,catalina.sh文件所有者并没有执行文件的权限,给.sh文件配置上可执行权限即可。

chmod 744 *.sh

注:如果出现zsh: no matches found无法解析 * 的报错,请使用命令 open ~/.zshrc 打开zsh的配置文件。
在文件最下面一行输入:setopt no_nomatch,让chmod来解析 * 命令。保存配置文件,刷新配置:source ~/.zshrc
然后重启终端,再次来到bin目录下,执行chmod命令,为所有的.sh文件赋予执行权限。
执行完毕如下图:

之后无论Run还是Debug都是OK的了。

posted @ 2021-03-07 10:52  苍凉温暖  阅读(418)  评论(0编辑  收藏  举报