java - 如何在Tomcat中配置环境变量?

标签 java tomcat grails

我有一个应用程序作为 WAR 文件部署到 Tomcat。我已将此应用程序中的属性外部化,以便它读取 tomcat 中的环境变量以了解配置文件的位置:

def exConfig = ((Context)(new InitialContext().lookup("java:comp/env"))).lookup("grailsExtConfFile")

我目前配置它的方式是创建一个与我的 war 文件同名的文件(即如果 foo.war 然后创建 foo.xml ) 在`../conf/Catalina/localhost/foo.xml

<Environment name="grailsExtConfFile" value="file:/usr/share/apache-tomcat-7.0.39/configs.groovy" type="java.lang.String"/>

</Context>

一切正常。但是,每次我重新部署时,上述文件都会被删除,我需要重新创建它。

问题

有没有办法配置它,以便每次我重新部署文件 foo.xml 时都不会被删除?

最佳答案

抱歉,也许我没看对 - 为什么不将配置放在 tomcat 之外?例如在/mnt/appconfig/foo-app/foo.xml 中 - 如果这是一个 NFS/SAN 安装,所有节点都可以从中读取。

关于java - 如何在Tomcat中配置环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27450537/

相关文章:

java - Spring Batch Reader 的多个 SELECT SQL - 读取器链接

Grails 应用程序在一定时间间隔后 MySQL 连接丢失

java - 如何使用从java到windows操作系统的系统调用来查找可用的系统内存、磁盘空间、CPU使用情况

java - 如何将 jar 导入我的 java 程序?

java - 在本地运行 Heroku Java 教程时 Tomcat 未启动; "A child container failed during start"找不到 webapp 路径

java - PHP Java 桥异常 - 协议(protocol)错误

grails - 自定义人员类(替换用户名和密码属性)

Grails 远程分页正在刷新整个页面而不是 div

java 正则表达式转义序列

web-services - 如何使用 GroovyWS 生成 WSDL