zoukankan      html  css  js  c++  java
  • Java命令行启动jar包更改默认端口以及配置文件的几种方式

    Java命令行启动jar包更改默认端口以及配置文件的几种方式

    1. java -jar xxx.jar --server.port=8081

    默认如果jar包没有启动文件,可以采用这种方式进行启动

    1. java -jar xxx.jar --spring.profiles.active=dev
    1. 这种方式,你打的jar包里得有application-dev.properties或application-dev.yml这类资源文件
    2. 使用 "--spring.profiles.active" 参数,搭配@Profile注解,可以实现不同环境下(开发、测试、生产)配置参数的切换

    3. 根据文档描述,我们除application.properties外,还可以根据命名约定(命名格式:application-{profile}.properties)来配置,如果active赋予的参数没有与使用该命名约定格式文件相匹配的话,app则会默认从名为application-default.properties 的配置文件加载配置。
    如:`spring.profiles.active=hello-world,sender,dev` 有三个参数,其中 dev 正好匹配下面配置中的application-dev.properties 配置文件,所以app启动时,项目会先从application-dev.properties加载配置,再从application.properties配置文件加载配置,如果有重复的配置,则会以application.properties的配置为准。
    (配置文件加载顺序详见官方文档:24. Externalized Configuration)
    


    如此,我们就不用为了不同的运行环境而去更改大量的环境配置了(此处,dev、pro、test分别为:开发、生产、测试环境配置)

    1. java -jar xxx.jar --spring.config.location=/data/java/application.properties 或 java -jar xxx.jar --spring.config.location=/data/java/application.yml

    指定加载某个资源文件,也可以使用相对路径

    1. java -jar xxx.jar --spring.config.location=/data/java/application.properties -Dserver.port=8081 -Dserver.address=127.0.0.1

    扩展,你加载的指定配置文件里的有server.port和server.address配置项
    例如:
    我工程里有mapper/xxx.xml数据库CRUD接口映射文件,我编译后的目录文件其实是在target/classes/mapper/xxx.xml
    当我使用指定资源配置文件启动的时候,由于我指定的配置文件里配置的 mapper-locations: classpath:mapper/*. xml是这样的加载路径,调试运行时没问题,但是在编译后的目标目录里启动时,就会因为路径不对而导致启动失败。
    如果我这样启
    java -jar xxx.jar --spring.config.location=./classes/application.yml
    下面一定会报mybatis-plus相关的一些错误,例如找不到映射文件之类的
    那,如果我这样启
    java -jar xxx.jar --spring.config.location=./classes/application.yml -Dmybatis-plus mapper-locations=./classes/mapper
    就能正常加载资源配置文件并启动成功,其他配置项的加载道理也一样。

  • 相关阅读:
    Android虚拟、实体键盘不能同时使用?
    libwebsockets 运行问题
    Qt TabWidget QTabBar 宽高设置
    I.MX6 recovery mode hacking
    libwebsockets libwebsockets-webserver.c hacking
    MySQL(六)常用语法和数据类型
    MySQL(五)汇总和分组数据
    MySQL(四)字段及常用函数
    MySQL(三)用正则表达式搜索
    MySQL(二)数据的检索和过滤
  • 原文地址:https://www.cnblogs.com/passzhang/p/14044985.html
Copyright © 2011-2022 走看看