You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下IntelliJ运行项目报错:无法创建/logs目录

解决Spring项目启动时无法访问/logs目录的权限问题(Ubuntu + IntelliJ环境)

针对你遇到的ApplicationContextException报错,核心原因是Tomcat进程没有/logs目录的读写权限,即便目录已存在,以下是可行的解决方案:

  • 检查并调整目录权限

    1. 先查看/logs目录的权限详情:
      ls -ld /logs
      
    2. 如果目录所属用户不是当前登录用户,执行命令修改所属关系:
      sudo chown -R $USER:$USER /logs
      
    3. 调整目录权限确保进程可读写:
      sudo chmod -R 755 /logs
      
      注:如果需要写入权限,可改为775,避免使用777(存在安全风险)。
  • 改用项目内相对路径存储日志
    修改Spring配置文件(application.properties或application.yml)中的日志路径配置,将绝对路径/logs改为项目根目录下的相对路径:

    • properties格式:
      logging.file.path=./logs
      
    • yml格式:
      logging:
        file:
          path: ./logs
      

    这种方式会在项目目录下生成logs文件夹,权限继承自当前用户,大概率能避免权限问题。

  • 检查IntelliJ运行配置的用户权限
    打开IntelliJ的「Run/Debug Configurations」,确认是否勾选了「Run as administrator」或其他特殊用户选项。如果有,取消勾选,使用当前登录用户运行项目,避免进程权限与目录权限不匹配。

  • 排查AppArmor权限限制
    Ubuntu默认启用AppArmor,可能会限制Tomcat访问根目录下的文件夹:

    1. 临时关闭AppArmor测试:
      sudo systemctl stop apparmor
      
    2. 重启项目验证是否正常。如果恢复,需要为Tomcat添加AppArmor规则,或者将日志目录移至AppArmor允许访问的路径下。

内容的提问来源于stack exchange,提问作者miguel Guerreiro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 11:22:04