当前位置: 首页 > 知识库问答 >
问题:

Spring-boot应用程序-当jar使用su执行时没有加载外部属性-

袁卓
2023-03-14

我在spring-boot 2.2.4中有一个应用程序

当我像这样启动应用程序时:

su - sbert -c "java -jar /home/sbert/workspace/pj/batch-pj-clean-nas/target/batch-pj-clean-nas-1.0.0-SNAPSHOT.jar -Dconfig.location=application.properties"

未能解析值“${nas.base.directory}”中的占位符“nas.base.directory”

我尝试使用OS ubuntu、RH8和spring-boot 2.2.4或2.1.3并用--spring.config.location替换-dconfig.location

共有1个答案

寇照
2023-03-14

如果要从Jar外部加载application.properties文件,请给出它的完整路径

 类似资料:
  • 在我的SpringBootWeb服务应用程序中,我想加载一个名为appName的属性,该属性的值在application.properties中定义。 application.properties具有以下条目 我通过主应用程序类启动应用程序,如下所示 但是,当我运行应用程序时,我得到以下错误 原因:java.lang.IllegalArgumentException:无法解析字符串值“${appN

  • 我正在开发一个spring boot应用程序 我想用外部文件(例如)重写中的某些属性。 我尝试了几种方法: 中的“我的应用程序.属性”中的 我使用对其进行了测试。第一个方法只添加了属性,但没有重写它们。

  • 我试图弄清楚什么是最好的方法来设置Spring Boot应用程序,使其具有自己的jar依赖项,但当它作为java-jar命令运行时,将额外的jar添加到类路径中。哪种方法更有意义 > 使用原始jar(不添加依赖项)并将所有jar(应用程序和运行时)放置在文件系统的文件夹中,并使用PropertiesLauncher指定jar文件夹的loader.path。 使用fat jar(与应用程序jar一起

  • 我正在寻找解决这个问题的方法。 我有几个属性文件(application.properties、application realdb.properties)。假设我从“realdb”spring概要文件开始。现在,我想在部署到tomcat上时重写我的属性。我决定将文件放在/lib文件夹中,因为它自动位于类路径上,我没有找到更好的(即特定于应用程序的类路径文件夹) 所以我可以在那里申请。属性,只要我

  • 我有一个配置类,如下所示: 在这里之前的所有内容都定义在一个打包的jar中,我在spring boot应用程序中使用它作为依赖项 在Spring Boot应用程序中,我导入了,并调试了代码,看到创建了bean。 这是类,用于导入: 它加载了Spring的自动配置加载。

  • 我需要你在这个问题上给我建议,在一个spring boot应用程序中,我从数据库加载一些属性,比如(cron periods,email data),我需要在应用程序上下文中导出这些属性,以便用加载的数据来spring构建相应的beans。我怎么能这样做?