我想通過進程ID來停止Tomcat進程。我如何使用Java獲取Tomcat進程ID?tomcat通過進程ID關閉(windows)
1
A
回答
0
您可以在java中執行TASKLIST.EXE並將結果添加到結果中。我發現第二個選項是從java運行服務停止命令。
希望它有幫助。
1
沒有直接的方式來訪問我知道的PID,但是,有人寫了一篇關於如何間接完成這個工作的博客。這是他的5個不同選項的鏈接。
http://blog.igorminar.com/2007/03/how-java-application-can-discover-its.html
的最好的選擇就是這樣的產品......
使用Java的管理和監控 API(java.lang.management):
ManagementFactory.getRuntimeMXBean().getName();
返回類似於: 28906 @ localhost其中28906是t他是JVM進程的PID ,實際上是我的應用程序的 PID。
這種攻擊是依賴於JVM的,我只在Sun的JVM上對其進行了測試。
從Javadoc文檔的getName() RuntimeMXBean的方法:返回表示正在運行的Java虛擬機 名 。返回的名稱字符串 可以是任意任意字符串,並且Java 虛擬機實現可以 選擇在返回的 名稱字符串中嵌入平臺特定的 有用信息。每臺正在運行的虛擬機器可以有不同的名稱。
2
我不確定這是否有助於Windows的情況,但可以在Linux/UNIX上使用的catalina.sh
腳本將進程的PID存儲在文件中。您只需將CATALINA_PID
環境變量設置爲您的PID文件的路徑名即可。當你這樣做時,運行catalina.sh stop -force
將嘗試徹底關閉,如果失敗,則將爲kill
Tomcat進程。
相關問題
- 1. 啓動瀏覽器進程,並通過進程ID將其關閉後
- 2. 有什麼辦法通過進程ID關閉Java應用程序?
- 3. Linux命令通過名稱獲取Tomcat進程ID
- 4. 如何通過Windows API關閉電腦?
- 5. 通過WMI腳本關閉Windows機器
- 6. C#Windows窗體:關閉時[進程]
- 7. 關閉Windows服務中的子進程
- 8. 關閉Mathematica中的Windows進程
- 9. Tomcat關閉關閉jar
- 10. 通過Windows任務欄強制關閉窗口 - >關閉
- 11. Jenkins通過ssh殺死進程(Tomcat)
- 12. 關閉通過線程啓動的進程
- 13. Windows 2000關閉程序關閉
- 14. 程序通過Windows腳本立即關閉
- 15. WP7通過Windows按鈕關閉應用程序有多快?
- 16. angularjs通過關閉
- 17. 通過python3關閉
- 18. 通過關聯關閉樹?
- 19. C++通過熱鍵關閉我的進程
- 20. 防止關閉通過子進程打開的DOS shell窗口
- 21. 如何關閉windows窗體應用程序和excel.exe進程進行交互(可能通過垃圾收集器)?
- 22. 獲取在Windows上在Eclipse中運行的Tomcat的進程ID
- 23. 關閉控制檯關閉進程
- 24. Tomcat沒有關閉
- 25. 通過網站關閉應用程序
- 26. 僅通過VBA關閉應用程序
- 27. 通過Perl腳本獲取進程ID
- 28. 通過進程ID獲取hwnd C++
- 29. 通過名稱獲取進程ID
- 30. 如何在tomcat關閉時殺死Java引發的子進程