JVM不同环境不同参数配置文件覆盖

背景

需要在启动Java服务并且参数不同的场景,例如端口号在yml中的配置是这样的:

python 复制代码
server:
  port: 9100

覆盖配置对应JVM参数:

bash 复制代码
java -jar xxxx.jar  -Dserver.port=12306  [JVM其他参数]

这样12306就会覆盖掉9100端口的配置作为启动配置

IDEA本地的配置方式

这种配置想对yml覆盖都是有效的,包括自定义的非SpringBoot、Tomcat配置

比如如下可以用参数

bash 复制代码
java -jar xxxx.jar  -Da.b=2  [JVM其他参数]

以上就是覆盖方法了,也可以使用Shell脚本在启动时动态分配环境等多种需求中

python 复制代码
spring:
  profiles:
    active: dev

改成线上启动参数:

bash 复制代码
java -jar xxxx.jar  -Dspring.profiles.active=prod  [JVM其他参数]
相关推荐
源分享14 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
JAVA96514 天前
JAVA面试-JVM篇 03-JVM运行时数据区哪些是线程私有的哪些是共享的
java·jvm·面试
伶俜6614 天前
鸿蒙原生应用实战(十八)ArkUI 记账本:SQLite 账单 + 图表统计 + 分类管理
jvm·sqlite·harmonyos
IronMurphy14 天前
多线程问!
java·jvm·spring
unique15 天前
AI Coding 采集方案探索
jvm·人工智能·oracle
cfm_291415 天前
JVM GC日志解析
jvm
不良使15 天前
鸿蒙PC迁移:使用Electron`logseq-master-ohos` 鸿蒙适配全记录
jvm·electron·harmonyos
cfm_291415 天前
JVM深度详解:Class常量池、运行时常量池、字符串常量池、包装类对象池
java·jvm
JAVA96515 天前
JAVA面试-JVM篇 02-G1垃圾收集器的工作原理是什么与CMS的区别
java·jvm·面试