我想有时使用特殊配置启动Tomcat 6,而不是使用“server.xml”。所以我创建了另一个名为server_test.xml
的xml文件。现在我想告诉tomcat使用这个配置。这是怎么做到的?
我几乎没有在网上搜索。只有这样: “在Tomcat配置中使用不同的server.xml文件:./ tomcat.sh start -f / var / tmp / server - $ {USER} .xml”
这正是我想要的。也许这适用于Linux系统,但不适用于Windows。那里有什么想法吗?
答案 0 :(得分:14)
我知道了。我带了半个晚上,但它有效:)
起初我还想到了符号链接,但在Windows下,这不是你想要使用的东西。我的第二个想法是修改catalina.bat
,但这并不容易。不同的CATALINA_HOME
不是我真正想要的。
那我做了什么?我已将server.xml
作为参数提供给catalina.bat
。
catalina.bat start -config \conf\server_test.xml
美好而轻松:)
您可以拥有大量服务器配置文件,并提供启动和停止脚本所需的文件。棘手的是,Catalina课程为您提供了错误的使用信息:
usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { start | stop }
但是如果你交换参数并首先提供“开始”或“停止”然后再提供“ -config ... ”一切都有效。
同样非常好的是,您可以使用此解决方案在IntelliJ IDEA中创建不同的运行配置。我有一个Tomcat连接到本地数据库和一个连接到开发数据库的地方。对于每个我都有不同的server.xml
。
我希望这会有所帮助。
此致 塞巴斯蒂安
答案 1 :(得分:0)
看起来没有(记录)选项可以传递给startup.sh或catalina.sh来改变它。
也许您可以将server.xml
设置为您实际想要使用的文件的符号链接,只需在启动服务器之前更改符号链接即可进行更改?
否则,您可以使用$CATALINA_HOME
的不同值,但这需要您复制整个目录结构。
答案 2 :(得分:0)
tomcat.sh
自3.x以来就不存在了,说实话,我不记得它当时也有'-f'选项。
你有两个选择:
A)您可以按照here所述设置多个tomcat实例,并通过将CATALINA_BASE
指向您想要的那个来切换它们。
B)您可以创建多个名称不同的server.xml
文件(例如server-1.xml
,server-2.xml
等...)并编写一个简单的批处理脚本,将您指定的文件复制为命令行参数到实际的server.xml
,然后启动Tomcat。