我正在创建一个监视给定目录以进行更改的守护程序。当它检测到更改时,它会使用目录中存在的 JUnit 运行所有测试。
它通过调用
private void runTestsInWatchedDirectory(){
TestRunner runner;
runner= new TestRunner(this.dir);
org.junit.runner.JUnitCore.main(runner.getClass().getName());
}
TestRunner 是对这段代码的一个小改编:http ://burtbeckwith.com/blog/?p=52 。
它正确地找到并运行所有测试,但是当它完成时,守护程序被终止!我知道 JUnit 会杀死子线程,但为什么守护进程会死掉?我该如何解决?