我正在使用 JUnit 运行许多需要运行外部服务器 (tomcat) 的测试。我目前正在使用以下代码启动tomcat。
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
try {
Runtime.getRuntime().exec("{path to tomcat}/bin/startup.bat");
} catch (IOException exception) {
}
}
});
thread.setDaemon(true);
当所有测试完成时,问题就出现了,JVM 挂起等待 tomcat 关闭。如果我手动关闭 tomcat,JVM 会按预期关闭。
有没有办法运行tomcat,一旦所有测试完成(所有其他线程结束)JVM就不会被阻塞并关闭?