[英]How do I spawn a JVM from a JVM that is easy to control and monitor?
我想從Java類擴展一個新的JVM進程。
我可以使用Runtime.getRuntime().exec(...)
但這是一個非常低級的api。
我正在尋找可以將Process
api包裝起來的東西,例如:
MonitoredJavaProcess javaProcess = new MonitoredJavaProcess(MyMainClass.class, "-Xmx1g");
javaProcess.getGcLogStream();
javaProcess.getHeapSizeObserver();
// ...
javaProcess.waitForShutdown();
關於我要做什么的一些上下文:我正在運行JUnit,測試套件將啟動嵌入式Jetty服務器並對其進行一些測試。 這意味着,經過測試的Jetty服務器線程和junit測試線程在同一JVM中運行。 我需要在單獨的JVM中運行它們。 我可以使用ant或maven或starup碼頭以外的任何東西,然后對它運行測試套件,但是對於我的簡單場景而言,這聽起來有些過分了。
也許您的方法不正確。 也許您應該考慮使用JMX來監視JVM?
干杯,
您實際上正在嘗試做什么。 可能是您可以查看java.lang.ProcessBuilder,它可能適合您的需求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.