前文中说到用java代码启动tomcat,感兴趣的小伙伴可以看看
如何用java代码启动tomcat
在windows服务器中
1、使用这个方法 Runtime.getRuntime().exec() 去执行tomcat启动脚本。会显示CATALINA_HOME这个环境变量未配置。(配置完可以启动)
2、配完后,如果再创建一个新的tomcat,启动新的tomcat后。其实还是启动的环境变量配置里面的那个tomcat。
那么这个问题如何解决?打开startup.bat,我们可以看到,上面的控制台报错的信息在这里能够看到。大概的意思就是我们配了CATALINA_HOME环境变量后,tomcat容器启动,默认取我们配过的环境变量。如果没配则取当前目录(%cd%)。
这里的 %cd% 就是你进入tomcat的路径。但是我们是从代码直接执行的,所以容器不知道我们的%cd% 是什么,也就是 %cd% 是空的。
所以我们只需要把每个tomcat容器的CATALINA_HOME写成默认路径下的就行,当然还需要把已经配过的环境变量删除掉。