第 8 章 使用配置配置集
您可以根据您的环境使用不同的配置配置集。配置配置集可让您在同一文件中有多个配置,并使用配置集名称在它们之间进行选择。Red Hat build of Quarkus 有三个配置配置集。另外,您可以创建自己的自定义配置集。
Quarkus 默认配置集:
- Dev: 在开发模式中激活
- 测试 :运行测试时激活
- prod :在没有以开发或测试模式下运行时的默认配置集
先决条件
- 您有一个 Quarkus Maven 项目。
流程
打开 Java 资源文件并添加以下导入声明:
import io.quarkus.runtime.configuration.ProfileManager;
要显示当前的配置配置集,请添加调用
ProfileManager.getActiveProfile ()
方法的日志:LOGGER.infof("The application is starting with profile `%s`", ProfileManager.getActiveProfile());
注意无法使用
@ConfigProperty ("quarkus.profile")
方法访问当前配置文件。
8.1. 设置自定义配置配置集
您可以根据需要创建任意数量的配置配置集。您可以在同一个文件中有多个配置,您可以使用配置集名称在它们之间进行选择。
流程
要设置自定义配置集,请在
application.properties
文件中使用配置集名称创建一个配置属性,其中 <key>
; 是属性的名称,<value>
; 是属性值,<profile
> 是配置集的名称:%<profile>.<key>=<value>
在以下示例中,
quarkus.http.port
的值默认为 9090,当dev
配置集被激活时会变为 8181 :quarkus.http.port=9090 %dev.quarkus.http.port=8181
使用以下方法之一启用配置集:
设置
quarkus.profile
系统属性。要使用
quarkus.profile
系统属性启用配置集,请输入以下命令:mvn -Dquarkus.profile=<value> quarkus:dev
设置
QUARKUS_PROFILE
环境变量。要使用环境变量启用配置集,请输入以下命令:
export QUARKUS_PROFILE=<profile>
注意system 属性值优先于环境变量值。
要重新打包应用程序并更改配置集,请输入以下命令:
./mvnw package -Dquarkus.profile=<profile> java -jar target/myapp-runner.jar
以下示例显示了激活
prod-aws
配置集的命令:./mvnw package -Dquarkus.profile=prod-aws java -jar target/myapp-runner.jar
默认 Quarkus 应用程序运行时配置集设置为用于构建应用程序的配置集。Red Hat build of Quarkus 会自动根据您的环境模式选择一个配置集。例如,当您的应用程序以 JAR 身份运行时,Quarkus 处于 prod
模式。