我有一个脚本需要在tomcat完成启动后运行并准备开始部署应用程序.我正在使用$TOMCAT_HOME/bin/startup.sh
哪个立即返回.我怎么能等到tomcat完成启动?
可能有几种方法可以做到这一点.我们使用的技巧是:
#!/bin/bash until [ "`curl --silent --show-error --connect-timeout 1 -I http://localhost:8080 | grep 'Coyote'`" != "" ]; do echo --- sleeping for 10 seconds sleep 10 done echo Tomcat is ready!
希望这可以帮助!
实现programaticaly并不难.你可以实现org.apache.catalina.LifecycleListener然后你就可以了
public void lifecycleEvent(LifecycleEvent lifecycleEvent) { if(lifecycleEvent.getType().equals(Lifecycle.START_EVENT)) //do what you want } }
在web.xml中:
... ...
请注意,6-9只雄猫之间的某些事情可能会有所不同.