linux - Ubuntu 14.04 LTS 磁盘中的 ${user.home}

标签 linux spring ubuntu spring-boot ubuntu-14.04

我有一个基本的 SpringBoot 应用程序。使用 Spring Initializer、嵌入式 Tomcat、Thymeleaf 模板引擎,并打包为可执行 JAR 文件。

这是我的配置类之一

@Configuration
@EnableTransactionManagement
@EnableCaching
@PropertySource("file:///${user.home}/.devices/application-common.properties")
public class DeviceApplicationConfig {
..
}

我用 devuser 进入 linode 机器:

devuser@localhost:~$ pwd
/home/devuser

然后我运行 SpringBoot 应用程序。来自文件夹/var/devices,但是我有这个错误,而我期待程序在以下位置搜索文件:/home/devuser/.devices/application-common.properties

Caused by: java.io.FileNotFoundException: /root/.devices/application-common.properties (No such file or directory)

并检查应用程序似乎是由 devuser 运行的进程:

devuser  12922  1.3 12.3 2478348 252840 ?      Sl   15:16   0:37 java -jar devices-0.0.1-SNAPSHOT.jar

最佳答案

您需要配置user.home 目录并从此用户运行应用程序。对于 user.home 的配置,您可以引用下面的 stackoverflow 链接:

Command to change the default home directory of a user

关于linux - Ubuntu 14.04 LTS 磁盘中的 ${user.home},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44987750/

相关文章:

java - Spring Boot静态文件加载缓慢

spring - Apache Camel Spring Javaconfig 单元测试 端点上没有可用的消费者

linux - bash - 只有当相应的文本文件存在时才打开图像

linux - 我想替换一个包含更多 no of/using vim 的单词

java - 如果检测到更改,如何使 Maven 自动重新编译?

php - 如何在 ubuntu 服务器中将 php 8.0 设置为默认版本

python-3.x - 使用 gunicorn + nginx 服务 flask 应用程序显示 404 [ec2]

ubuntu - Arduino 库未正确导入 Ubuntu 13 :10

linux - awk 比较匹配项并将其附加到另一个文件中

linux - 我如何创建一个通用的 shell 命令来退出或从执行或获取的脚本中返回?