运行java程序的三个步骤 java启动命令的秘密
今天发布新java应用,配置文件有多个yml组成:,我来为大家科普一下关于运行java程序的三个步骤 java启动命令的秘密?以下内容希望对你有帮助!
运行java程序的三个步骤 java启动命令的秘密
今天发布新java应用,配置文件有多个yml组成:
application-cache.yml
application-config.yml
application-db.yml
application-extension.yml
application.yml
regionmapper.properties
其中:application.yml 有include将几个yml关联起来
spring:
application:
name: demo
profiles:
include:
- cache
- config
- db
- extension
通常我们的应用启动命令是:
java \$JAVA_OPTS \$JAVA_AGENT -Djava.security.egd=file:/dev/./urandom -jar /app/java-application.jar --spring.config.location=/etc/config/application.yml
但是启动提示找不到对应的 配置文件数据。
比如application-cache.yml
#缓存配置定义
spring:
...... # 省略部分 配置
#redis缓存配置
redis:
lettuce:
pool: #连接池配置
max-active: 8 #最大连接数,默认8
max-wait: -1 #最大阻塞时间,默认-1
max-idle: 8 #最大空闲连接,默认8
min-idle: 0 #最小空闲连接,默认0
min-evictable-idle-time: 30m #连接的最小空闲时间,默认30分钟
time-between-eviction-runs: 15m #空闲连接检测的周期.默认为-1,表示不检测
host: x.x.x.x
port: 6379
password: *******
#本地缓存配置
cache:
type: caffeine
caffeine:
spec: initialCapacity=100,maximumSize=1000,expireAfterWrite=30s
application.yml 是将application-cache.yml引入的,但是启动就是报错,找不到spring.redis.host.
后经同事提醒将启动命令配置参数修改:
--spring.config.location=/etc/config/application.yml
改成
--spring.config.location=/etc/config/
后面不指定application.yml
完整命令:
java \$JAVA_OPTS \$JAVA_AGENT -Djava.security.egd=file:/dev/./urandom -jar /app/java-application.jar --spring.config.location=/etc/config/
启动成功了。
又进步了!
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com