【问题标题】:${user.home} in Ubuntu 14.04 LTS DiskUbuntu 14.04 LTS 磁盘中的 ${user.home}
【发布时间】:2017-07-09 00:27:06
【问题描述】:

我有一个基本的 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

【问题讨论】:

  • 看起来您需要以用户 devuser 而不是 root 运行应用程序?

标签: linux spring ubuntu spring-boot ubuntu-14.04


【解决方案1】:

您需要配置user.home 目录并从该用户运行应用程序。 user.home的配置可以参考下面的stackoverflow链接:

Command to change the default home directory of a user

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-28
    • 1970-01-01
    • 2016-12-17
    • 1970-01-01
    • 1970-01-01
    • 2019-06-25
    • 2016-02-01
    相关资源
    最近更新 更多