【发布时间】:2017-04-20 18:42:09
【问题描述】:
我已经通过执行命令设置了环境变量
export test=abcd
当我运行printenvcommand 时,我可以看到 test=abcd
我已经部署了一个 springboot.jar 应用程序,并且我正在从 springboot.conf 文件中传递 JAVA_OPTS。
JAVA_OPTS='-Dspring.profiles.active=aaa -Denv=$test'
我通过 service springboot start 启动了该应用程序。当我检查进程时,env 变量没有 $test 环境变量的值。
/usr/bin/java -Dsun.misc.URLClassPath.disableJarChecking=true -Dspring.profiles.active=aaa -Denv=.
如何访问 conf 文件中的环境变量?我在某处读到环境变量在作为服务运行时将被剥离。基本上我想以service springboot start 的身份运行,它在内部执行以下命令
java -Dspring.profiles.active=aws -Denv=${whatever is set for env environment variable} -jar springboot.jar
我尝试了以下配置,但没有任何效果
JAVA_OPTS='-Dspring.profiles.active=aaa -Denv='$test
JAVA_OPTS='-Dspring.profiles.active=aaa -Denv='${test}
JAVA_OPTS='-Dspring.profiles.active=aaa -Denv=${test}'
JAVA_OPTS="-Dspring.profiles.active=aaa -Denv=$test"
【问题讨论】:
标签: java spring-boot configuration-files init.d java-opts