【问题标题】:Unable to stop and start tomcat server properly using batch file无法使用批处理文件正确停止和启动 Tomcat 服务器
【发布时间】:2015-04-12 01:14:44
【问题描述】:

您好,我对以下命令有疑问。

REM : Start server
C:
cd C:\Apache Software Foundation\apache-tomcat-7.0.22\bin
CALL shutdown.bat
cd C:\Apache Software Foundation\apache-tomcat-7.0.22\webapps
RMDIR ProjectWAR /S /Q
DEL ProjectWar.war
cd C:\Apache Software Foundation\apache-tomcat-7.0.22\bin
catalina jpda start

我正在尝试关闭tomcat服务器,然后删除项目文件夹和war文件,然后再次启动tomcat服务器。

但是如果我运行上面的代码,服务器会被关闭,那么只有 war 文件被删除(不是 projectWar 文件夹),没有别的。请帮帮我。

【问题讨论】:

  • 文件运行RMDIR ProjectWAR /S /Q时是否看到任何错误?
  • 你的项目文件夹下可能有一些文件锁定
  • @JosefZ 首先,你能告诉我上面的代码段是否有任何错误吗?谢谢。
  • 我在您提供的代码中看不到任何错误,看起来不错。但是,有一个隐藏的shutdown.bat 内容...我会在末尾添加pause 并在两个脚本中预设echo ON。关注@theglossy1 并公开所有错误消息...

标签: windows batch-file cmd command


【解决方案1】:
taskkill /f /t /im java.exe
timeout /t 30
pushd "tomcatHome\bin\"
call startup.bat

/f = 强制退出

/t = 停止任务和任何子任务

/im = 进程的镜像名称

taskkill docs

【讨论】:

  • 拜托,不要使用 cmets 空间来添加代码 - 它实际上是不可读的!改为编辑和更新您的帖子!
【解决方案2】:

当您调用关闭命令时,下一个命令不会等待服务器关闭。该文件夹不会被删除,因为它仍在被服务器使用(正在关闭但实际上并未关闭)。所以当它完成后,服务器关闭并且war被删除(因为没有任何东西在使用war),但是文件夹仍然存在,因为当调用删除命令时它正在使用中。

【讨论】:

    猜你喜欢
    • 2015-04-27
    • 2010-09-13
    • 1970-01-01
    • 2014-09-25
    • 1970-01-01
    • 2014-04-11
    • 2011-10-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多