Eclipse/SWT 中的 XULRunner 错误

XULRunner error in Eclipse / SWT

我正在尝试 运行 增强 JavaScript Bridge 示例 here.

我创建了一个新项目,并通过以下方式添加了对 SWT 的引用:

项目(右击)-->属性-->库-->添加变量-->配置变量-->新建

但是我无法将此项目添加到 运行。我得到的错误取决于我引用的 SWT 库:

Could not instantiate Browser: org.eclipse.swt.internal.mozilla.init.XPCOMInit.GREVersionRange_sizeof()I

Could not instantiate Browser: No more handles [Could not detect registered XULRunner to use]

XULRunner 或 Mozilla 浏览器似乎有问题。我尝试在各自文件夹的控制台中通过 运行ning xulrunner.exe --register-global 使用不同的 XULRunner 版本(10、18、24)。它没有帮助。我不知道还能做什么。

我的系统是:

好的,所以我设法让 XULRunner 按以下方式工作:

1) 下载 XULrunner 24.0。你可以在这里找到我使用的版本:

2) 在我的 Java 代码中,我创建了一个 Composite 来包含我的浏览器对象。

在其构造函数中,我将路径设置为我在步骤 1 中下载的 xulrunner 文件夹,然后实例化浏览器:

public class MyBrowserComp extends Composite {

    private String pathToXulrunner = "C:\path\to\xulrunner";`

    private Browser browser;

    public MyBrowserComp(..) {
        System.setProperty("org.eclipse.swt.browser.XULRunnerPath", pathToXulrunner);
        browser = new Browser(this, SWT.MOZILLA);
    }
}