我的Sahi执行永远不会结束。这就像内部存在某种僵局一样。
我开发了一个简单的例子来重现问题。它创建并启动Sahi代理,然后实例化浏览器并导航到网页,然后关闭浏览器并停止代理:
package com.testing;
import net.sf.sahi.Proxy;
import net.sf.sahi.client.Browser;
import net.sf.sahi.config.Configuration;
import static net.sf.sahi.util.Utils.sleep;
public class SahiTest {
public static void main(String[] args) {
new SahiTest().test();
}
private void test() {
Configuration.init("/sahi_install_dir", "/sahi_install_dir/userdata");
Proxy proxy = new Proxy(9999);
proxy.start(true);
while (!proxy.isRunning()) {
sleep(100);
}
Browser browser = new Browser("chrome");
browser.open();
browser.navigateTo("http://www.kilobolt.com/game-development-tutorial.html");
browser.close();
proxy.stop();
}
}
一切正常但在最后一行(停止代理)之后,执行永远不会结束。
我已尝试使用Chrome和Firefox,效果相同。
如果我摆脱了浏览器实例化(因此只创建和停止代理),程序就会结束。
请有人帮忙吗?。