【问题标题】:How to specify spring.profiles.active when I run mvn install运行 mvn install 时如何指定 spring.profiles.active
【发布时间】:2023-03-18 23:11:02
【问题描述】:

在这个带有 Spring 的 Web 应用程序中,我为不同的部署环境创建了几个应用程序属性文件。他们指定不同的数据库连接配置。

application-dev.properties
application-qa.properties
application-stg.properties
application-prod.properties

根据spring doc推荐的方式是在运行时将spring.profiles.active设置为JVM选项,例如:

-Dspring.profiles.active=prod

但是,我应该如何使用 mvn install 将应用程序部署为 war。我应该如何设置弹簧轮廓?我正在使用 Eclipse。

编辑: 我在 下设置了JVM 选项。当我将它部署为战争时,它似乎没有被 maven 拾取,因为我从 tomcat 收到以下错误:

Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception

【问题讨论】:

    标签: eclipse spring web-services maven jvm


    【解决方案1】:

    在运行->运行配置下,选择您的 Maven 启动配置,然后选择 JRE 选项卡,并在 VM 参数文本区域中键入您的参数。

    【讨论】:

    • 我在运行配置下看不到maven launch configuration。请参阅随附的屏幕截图。
    • 在参数选项卡下,您可以提供虚拟机选项
    • 查看新截图,我确实在参数下设置了 jvm 选项。它在日食下运行良好。当我 mvn install 并将其部署在 tomcat 下时,我才遇到问题。显然 jvm 选项没有被 maven 拾取。
    • 你必须在tomcat的启动配置中设置vm参数。如果您使用 eclipse 启动 tomcat,请在服务器配置中单击“打开启动配置”,然后在参数选项卡下添加您的参数。
    • 如果你使用脚本启动tomcat,你必须像这样(linux语法)将你的参数添加到JAVA_OPTS:export JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=prod"跨度>
    【解决方案2】:

    在运行配置下 > 转到环境选项卡,然后添加您的属性值以获取更多信息,请参阅下图:Eclipse Environment SetUp

    【讨论】:

      猜你喜欢
      • 2011-10-06
      • 2021-12-14
      • 2021-04-23
      • 2019-06-17
      • 2013-11-16
      • 2019-04-24
      • 1970-01-01
      • 2013-06-29
      • 2018-01-14
      相关资源
      最近更新 更多