场景说明:
在CentOS7中运行jar包报错,错误代码如下:
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:107)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
2024-02-01 17:12:47.138 ERROR 17886 --- [ main] o.s.boot.SpringApplication : Application run failed
java.lang.IllegalStateException: java.lang.IllegalStateException: Logback configuration error detected:
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - openFile(null,true) call failed. java.io.FileNotFoundException: /logs/server/logs/2024-02-01.log (Permission denied)
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[alertFILE] - openFile(null,true) call failed. java.io.FileNotFoundException: /logs/server/alert/2024-02-01.log (Permission denied)
大致说明:
是在项目启动时,创建日志,但是在访问路径时报错了,java.io.FileNotFoundException
原因是:当前登录Linux的用户对于访问/logs/server
路径没有权限。因此我将该路径的权限设置为777(最高权限,示例为给所有用户添加权限)就可以了。
方式一、下图是用ftp工具更改权限
方式二、进入Linux系统中,使用root
权限对文件或文件夹进行权限更改,命令如下:
chmod 777 /logs/server
注意:
如果目录下有多个文件或文件夹要赋予权限,需要循环赋值,可以执行以下代码
chmod -R 755 /logs/server
给指定用户添加权限:
示例表示给www用户添加对文件夹‘/logs/server’
方式三、宝塔面板中修改权限