0

人们。

有人可以帮忙解决这个...

Tomcat通过运行启动后startup.bat- 需要停止它但得到:

c:\Opt\tomcat_8080\bin>shutdown.bat
Using CATALINA_BASE:   c:\Opt\tomcat_8080
Using CATALINA_HOME:   c:\Opt\tomcat_8080
Using CATALINA_TMPDIR: c:\Opt\tomcat_8080\temp
Using JRE_HOME:        C:\Opt\jdk1.6.0_32x64\jre
Using CLASSPATH:       c:\Opt\tomcat_8080\bin\bootstrap.jar
The process cannot access the file because it is being used by another process.

我不能使用taskkill- 因为进程很少java.exe- 所以我不能PID只是Tomcat......只需手动杀死它Process Explorer- 但需要从将从TeamCity服务器调用的脚本自动执行它。

操作系统 - Windows 7, Tomcat 5.5.36.

4

1 回答 1

1

解决者:

1)添加行/bin/startup.bat

set title="Tomcat"

所以现在我有Java进程的描述(需要,因为Javatasklist进程很少,只需要杀死Tomcat)。

2)第一个命令 - 使用Title Tomcat选择进程并将其写入文件:

>tasklist /v /FI "IMAGENAME eq java.exe" | findstr /i "Tomcat" > tomcatpid.txt

3)第二个命令 - 选择TOKEN 2(这是PID先前选择的进程)并运行taskkill

>for /F "TOKENS=2" %a in ('type tomcatpid.txt') do (taskkill /PID %a)

>(taskkill /PID 3360 )
SUCCESS: Sent termination signal to the process with PID 3360.

希望 - 这会帮助某人:-)

我确定有更简单的解决方案 - 但为Windows编写脚本并不是我最喜欢的职业......

于 2013-11-08T11:54:02.590 回答