我正在尝试将我的应用程序 spring boot 部署到 Linux 服务器中,所以我遵循了这个 link ,下面的文件代表我的单位声明服务:
#change this to your workspace
WorkingDirectory=/home/user1/myApp.dev/API/
[Service]
User=user1
ExecStart=/usr/bin/java -jar /home/user1/myApp.dev/API/myApp.jar
SuccessExitStatus=143
ExecStop=/bin/kill -INT $MAINPID
ExecReload=/bin/kill -TERM $MAINPID
# In case if it gets stopped, restart it immediately
Restart = always
Type = simple
[Install]
WantedBy=multi-user.target
当我启动我的应用程序时出现以下错误:
java.io.FileNotFoundException: logs/myLogs-api.log (No such file or directory).......Failed to create parent directories for [/logs/myLogs-api.log]
我的应用程序找不到 logs 文件夹,但它已经存在于我的 jar 文件夹 /home/user1/myApp.dev/API/ 的同一目录中。
我的logback配置
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH:-logs}/myLogs-api.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_PATH:-logs}/myLogs-api.%d{yyyy-MM-dd}.log</fileNamePattern>
</rollingPolicy>
<append>false</append>
<encoder>
<pattern>%d{dd-MM-yyyy HH:mm:ss.SSS} %magenta([%thread]) %highlight(%-5level) %logger{36}.%M - %msg%n</pattern>
</encoder>
</appender>
<root level="info">
<appender-ref ref="FILE" />
</root>
</configuration>
最佳答案
看起来您的应用程序没有创建文件夹的权限
Failed to create parent directories for [/logs/myLogs-api.log]
作为测试,您可以尝试使用 sudo 运行应用程序。
关于java - 无法将 Spring Boot 应用程序启动到 Linux 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52487136/