Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Quarkus如何在application.properties中设置环境变量_Java_Postgresql_Environment Variables_Application.properties_Quarkus - Fatal编程技术网

Java Quarkus如何在application.properties中设置环境变量

Java Quarkus如何在application.properties中设置环境变量,java,postgresql,environment-variables,application.properties,quarkus,Java,Postgresql,Environment Variables,Application.properties,Quarkus,最近,我从thorntail切换到quarkus,我在试图找到如何在application.properties中设置环境变量时遇到了一些困难。在thorntail中,我使用了类似这样的东西${env.HOST:localhost},基本上是指放置环境变量,如果找不到任何东西,请将localhost作为默认设置,quarkus application.properties是否可以这样做?我在GitHub上没有发现任何问题,也没有人回答了这个问题?在应用程序中。属性可以使用: somename=$

最近,我从thorntail切换到quarkus,我在试图找到如何在application.properties中设置环境变量时遇到了一些困难。在thorntail中,我使用了类似这样的东西
${env.HOST:localhost}
,基本上是指放置环境变量,如果找不到任何东西,请将localhost作为默认设置,quarkus application.properties是否可以这样做?我在GitHub上没有发现任何问题,也没有人回答了这个问题?

应用程序中。属性可以使用:

somename=${HOST:localhost}

它将正确展开
HOST
环境变量,并在未设置
HOST
的情况下使用
localhost
作为默认值

或者,您不需要在application.properties中引用环境变量,只需在代码中引用变量即可:

@ConfigProperty(name = "my.property", defaultValue = "default value")
String myProperty;
并使用env变量指定它,如下所示:

export MY_PROPERTY="env var" && java -jar myapp.jar
或者使用命令行定义-D

java -Dmy.property="CL key" -jar myapp.jar

请参考《Quarkus配置指南》

它确实适用于最新版本的Quarkus(我已经测试了>=1.1的版本)。在本例中,我们可以只使用-1吗quarkus.mailer.from=${SYSTEM\u EMAIL:-}quarkus.mailer.port=${EMAIL\u SERVER\u port:-1}``使用
-
指定空字符串,默认int为
-1
,我不确定是否理解您的问题。你能试着解释一下吗?我的意思是我用defaut值
-
表示空字符串,用
-1
表示int初始值。这是正确的用法吗?在Quarkus文档中找不到任何关于此的最佳实践。您也可以将Java字段
设置为可选的
,而不必传递默认值