IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Quarkus框架在不同环境下的配置切换 -> 正文阅读

[游戏开发]Quarkus框架在不同环境下的配置切换

1.如何像SpringBoot那样来切换配置?

在使用Quarkus进行开发过程中,有时候需要在开发环境和测试环境经常切换,像SpringBoot 它是可以直接指定文件名后缀来使用不同的配置文件,而Quarkus貌似没有像SpringBoot那样的操作。
但是Quarkus在官网的操作文档上也为我们提供了一个方法用来切换配置文件!那就是…往下看👇
在Qaurkus的配置文件application.properties中,咱们可以使用%dev %test 这样的前缀来指定不同环境下的配置参数,例如:

%dev.quarkus.http.port = 8080
%test.quarkus.http.port = 8888

上面这个表示了在开发环境下咋们使用8080端口,而在测试环境下咱们使用8888端口。其他的配置也是如此只需要在频繁更换的配置项前面加上这样的前缀就可以了。

2.前缀加了之后,如何在程序中指定?

使用不同的配置我们只需要在打包的时候加上一个指令: -Dquarkus.profile=dev(这里等号后面的内容为你配置文件中需要选择的前缀,如果你是测试环境就-Dquarkus.profile=test)
完整打包命令👇:

mvn clean package -Pnative -Dquarkus.profile=dev/test
####  这样打出来的包就会使用你指定的配置项

3.如果我们除了打包需要在本地启动程序?

我们可以在terminal 中使用命令:

mvn quarkus:dev -Dquarkus.profile=dev/test(这个根据需要选择是dev 还是test)
#### 这样跑起来的程序使用的配置就是我们所制定的配置参数

4.如何对程序进行Debug调试?

程序跑起来如果我们需要对它进行DEBUG调试,因为我们在配置文件中指定了不同的前缀如果我们直接使用mvn插件提供的debug(如下图),它只会使用dev前缀的配置。那如果我们需要用到test前缀的配置时就很麻烦。
使用mvn的quarkus插件的debug
那么我们可以这样进行操作:
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
命令: ①quarkus:dev -Dquarkus.profile=test -f pom.xml
quarkus:dev -Dsuspend -Dquarkus.profile=test -f pom.xml
上述两个指令中②中加了一个-Dsuspend 这个是程序跑起来它会一直等着你打断点进入调试,而①就不会一直等着。进入程序的debug状态就是程序起来之后会出现一个Attach Debugger,点击它咱们就可以调试了
在这里插入图片描述
配置完成之后点击判断的启动按钮就可以跑指定配置参数的程序了。

这样整个不同环境的参数配置以及调试就通了。

如果跑起来之后出现中文乱码 ,在启动的配置 的 Runner下面的VM Options中加: -Dfile.encoding=GB2312 即可解决。

PS – 结语:

其实如果我们在项目启动的时候跟进去看它找配置文件参数时会发现如果我们没有指定前缀的情况下他们把每个参数都加一个%dev的前缀。所以开发环境下的debug我们直接debug跑启动类就行,其它环境我们再使用上述的方法进行调试即可!

谢谢!

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2021-09-13 09:34:32  更:2021-09-13 09:35:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 19:24:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码