Java windows 10 64位上maven SWT项目中的XPCOM错误
我正在尝试运行最简单的SWT浏览器示例,其中MOZILLA作为默认渲染器。得到这个错误Java windows 10 64位上maven SWT项目中的XPCOM错误,java,maven,swt,xulrunner,Java,Maven,Swt,Xulrunner,我正在尝试运行最简单的SWT浏览器示例,其中MOZILLA作为默认渲染器。得到这个错误 --- exec-maven-plugin:1.2.1:exec (default-cli) @ SwtBrowser --- Exception in thread "main" org.eclipse.swt.SWTError: XPCOM error 0x80004005 at org.eclipse.swt.browser.Mozilla.error(Unknown Source) a
--- exec-maven-plugin:1.2.1:exec (default-cli) @ SwtBrowser ---
Exception in thread "main" org.eclipse.swt.SWTError: XPCOM error 0x80004005
at org.eclipse.swt.browser.Mozilla.error(Unknown Source)
at org.eclipse.swt.browser.Mozilla.initXULRunner(Unknown Source)
at org.eclipse.swt.browser.Mozilla.create(Unknown Source)
at org.eclipse.swt.browser.Browser.<init>(Unknown Source)
at dev.nazm.swt.Mozilla.main(Mozilla.java:57)
------------------------------------------------------------------------
我已经下载了xulrunner 24.0并将其解压缩到C:\Program Files\xulrunner 24
这是我的主课
public class SwtBrowser {
public static void main(String[] args) {
String path = "C:\\Program Files\\xulrunner24";
System.getProperties().setProperty("org.eclipse.swt.browser.XULRunnerPath",path);
Display display = new Display();
Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
Browser browser = new Browser(shell, SWT.MOZILLA);
browser.setUrl("https://chromium.github.io/octane/");
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
}
这是我的java版本
java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)`
我正在Windows 10 amd64环境中尝试此功能。
我已经在我的计算机上安装了Mozilla FirefoxESR 24.0。
我还安装了VisualC++可再发行版本
现在我的问题是
pom.xml
以获取64位SWT(org.eclipse.SWT.win32.win32.x86_64
,而不是org.eclipse.SWT.win32.win32.x86
),因为64位JVM(在我的例子中是1.8.0_131)
最初,我在这里找到了xulrunner下载:
但是,我也在我的存储库中重新托管了它
关于在Maven项目中这样做,我不确定。您只需将其与应用程序打包在lib
目录中即可。如果将xulrunner运行时打包并放入Maven存储库会有所帮助,那么我也可以将其托管(我们的用户可以将其托管在自己拥有的repo上)
如果这不起作用,请告诉我,我很乐意再看一眼
java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)`