JavaFX';s Web引擎陷入运行状态
我正在尝试使用WebEngine作为无头浏览器。这是一个概念证明,它非常类似于JavaFX';s Web引擎陷入运行状态,java,javafx,webkit,javafx-webengine,Java,Javafx,Webkit,Javafx Webengine,我正在尝试使用WebEngine作为无头浏览器。这是一个概念证明,它非常类似于 成功永远不会被击中,也不会出现任何错误情况。(预期行为:任务最终应终止,状态为成功或出现错误。)也有同样的问题,您在评论中的链接帮助了我。只需在start方法之外声明web引擎,否则GC会处理它。这与。我怀疑潜在的原因可能是相同的。如果你明确地说出你期望的行为(在这种情况下,似乎成功的行为应该打印出来),你更有可能得到帮助。一个不耐烦的读者可能会关闭作为离题->问题寻求调试帮助必须…我做了编辑。谢谢你的建议。 imp
成功永远不会被击中,也不会出现任何错误情况。(预期行为:任务最终应终止,状态为成功或出现错误。)也有同样的问题,您在评论中的链接帮助了我。只需在start方法之外声明web引擎,否则GC会处理它。这与。我怀疑潜在的原因可能是相同的。如果你明确地说出你期望的行为(在这种情况下,似乎成功的行为应该打印出来),你更有可能得到帮助。一个不耐烦的读者可能会关闭作为离题->问题寻求调试帮助必须…我做了编辑。谢谢你的建议。
import javafx.scene.web.*;
import javafx.application.*;
import javafx.stage.*;
import javafx.concurrent.Worker.*;
import javafx.beans.value.*;
public class WebEngineTest extends Application {
public void start(Stage s) {
WebEngine we = new WebEngine();
//Print state changes as they happen;
//Should go READY -> SCHEDULED -> RUNNING -> SUCCEEDED
we.getLoadWorker().stateProperty().addListener(
new ChangeListener<State>() {
public void changed(ObservableValue ov, State oldState, State newState) {
System.out.println(oldState + " -> " + newState);
}
});
//Hit some website
we.load("http://javafx.com");
}
public static void main(String[] args) {
launch(args);
}
}
READY -> SCHEDULED
SCHEDULED -> RUNNING