V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cencoroll
V2EX  ›  Java

[ Java 相关] 请教一下 Tomcat 如何指定 jar 项目下的 application 要读取的是哪个

  •  
  •   cencoroll · 2022-09-08 10:45:10 +08:00 · 1145 次点击
    这是一个创建于 589 天前的主题,其中的信息可能已经有所发展或是发生改变。
    网上搜了好多都没有查到准确的办法,目前是这样的,项目打包好 jar 包后贴到服务器上运行,可是每次运行都是默认读取的 application-dev 配置文件,我要怎么设置才能让 tomcat 去读取 application-prod 或是 application-test 的配置文件呢?
    系统是 win ,在 tomcat 文件夹以外的路径下配置个文件夹,文件夹下有新建的 xml 文件,里面有一条是:
    <arguments>-Dserver.port=8080 -Dfile.encoding=UTF-8 -jar "%BASE%\sfj.jar"</arguments>
    我尝试过添加根据网上搜到指令-Dspring.config.location 启动都失败,请问要怎么配置才可以?
    4 条回复    2022-09-08 11:42:35 +08:00
    Junzhou
        1
    Junzhou  
       2022-09-08 11:07:05 +08:00
    -Dspring.config.additional-location=./application-prod.yml
    Junzhou
        2
    Junzhou  
       2022-09-08 11:08:33 +08:00
    如果 resource 中有 prod 或者 test 的配置文件,也可以通过 --spring.profiles.active=prod 指定。
    xuanbg
        3
    xuanbg  
       2022-09-08 11:15:48 +08:00
    --spring.profiles.active=xxx 。这种办法非常灵活,尤其适用于 Jenkins 打包发布到不同的环境。
    cencoroll
        4
    cencoroll  
    OP
       2022-09-08 11:42:35 +08:00
    @xuanbg
    @Junzhou

    感谢回覆,最后使得是 active 这个
    <arguments>-jar "%BASE%\xx.jar" -Dserver.port=8080 -Dfile.encoding=UTF-8 --spring.profiles.active=test </arguments>
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1085 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 23:23 · PVG 07:23 · LAX 16:23 · JFK 19:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.