【问题标题】:Externalize grails application configuration to tomcat conf directory将 grails 应用程序配置外部化到 tomcat conf 目录
【发布时间】:2014-07-23 17:10:15
【问题描述】:

我正在尝试外部化 grails 应用程序的配置。

我已经成功外部化,配置文件在用户主目录中,如下所示。

grails.config.locations = ["file:${userHome}/.conf/${appName}-config.properties"]

但是,我需要将配置文件外部化,以便配置文件位于 tomcat/conf 目录中。

在其他非 grails 应用程序中,我曾经通过将配置位置指定为 ${CATALINA_HOME}/conf 来实现这一点。

如何将配置外部化到 grails 中的 tomcat/conf 目录?

【问题讨论】:

  • 你试过了吗:grails.config.locations = ["file:${System.env.CATALINA_HOME}/conf/myconfig.properties"]

标签: tomcat grails


【解决方案1】:

在 Tomcat 中运行应用程序时,catalina.homecatalina.base 在 Java 系统属性中可用。

因此您可以在您的Config.groovy 文件中使用它们来添加一个新路径到grails.config.locations

grails.config.locations = []
def tomcatConfDir = new File("${System.properties['catalina.home']}/conf")
    if (tomcatConfDir.isDirectory()) {
    grails.config.locations << "file:${tomcatConfDir.canonicalPath}/${appName}-config.groovy"
}

这只是一个例子,但它确实有效。

【讨论】:

  • 你应该再试一次。我在之前的回答中添加了一个示例。
  • +2,效果很好。谢谢:)
猜你喜欢
  • 2019-06-02
  • 1970-01-01
  • 1970-01-01
  • 2012-07-13
  • 2021-03-04
  • 2019-05-17
  • 2021-12-16
  • 2015-01-18
  • 2013-04-05
相关资源
最近更新 更多