如何在Windows下使用特定的server.xml启动Tomcat?

时间:2009-07-20 16:51:36

标签: java tomcat

我想有时使用特殊配置启动Tomcat 6,而不是使用“server.xml”。所以我创建了另一个名为server_test.xml的xml文件。现在我想告诉tomcat使用这个配置。这是怎么做到的?

我几乎没有在网上搜索。只有这样: “在Tomcat配置中使用不同的server.xml文件:./ tomcat.sh start -f / var / tmp / server - $ {USER} .xml”

这正是我想要的。也许这适用于Linux系统,但不适用于Windows。那里有什么想法吗?

3 个答案:

答案 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.xmlserver-2.xml等...)并编写一个简单的批处理脚本,将您指定的文件复制为命令行参数到实际的server.xml,然后启动Tomcat。