问题描述
最近在做一个应用升级的项目,由于该应用部署与全省各个地市,因此升级的实现是由中心端发指令给代理端,由代理端处理升级操作(包括数据库的升级,普通文件的升级【应用的页面文件】,配置文件的升级,工作流升级等等),代理升级完成后向中心端上报升级结果。在处理升级前需要先将应用服务器停掉(以tomcat为例),升级完成后再启动应用。目前我使用的方法是通过java的调process类exec方法来执行tomcat的startup.bat和shutdown.bat脚本实现应用启停的。当调用startup.bat启动应用后,如果cmd窗口中没有出一些异常信息的话,则升级时,调用shutdown.bat时可以正常停止应用并关闭cmd窗口。现在的问题是当cmd窗口中出现异常信息时,升级时,调用shutdown.bat时,应用可以停掉,但是cmd窗口不能关掉,导致升级完成后,启动应用失败。向论坛高手请教,是否有什么解决办法或者更好的方法没,谢谢了!
时间: 2024-10-28 05:29:59