【问题标题】:SWT Browser not working?SWT 浏览器不工作?
【发布时间】:2011-06-20 23:06:22
【问题描述】:

我在使用 SWT 浏览器组件时遇到了一点问题。 我正在运行 Ubuntu 11.04 AMD64 和 Eclipse 3.7,以及来自 Sun 的 Java SE 1.6

我的问题是我的浏览器无法初始化。当我使用 SWT.NONE 标志时,我得到了错误

Exception in thread "main" org.eclipse.swt.SWTError: No more handles (java.lang.UnsatisfiedLinkError: no swt-mozilla-gtk-3346 or swt-mozilla-gtk in swt.library.path, java.library.path or the jar file)
at org.eclipse.swt.SWT.error(SWT.java:3589)
at org.eclipse.swt.SWT.error(SWT.java:3481)
at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:324)
at org.eclipse.swt.browser.Browser.<init>(Browser.java:109)
at browser.Main.createGUI(Main.java:40)
at browser.Main.main(Main.java:21)

Caused by: java.lang.UnsatisfiedLinkError: no swt-mozilla-gtk-3346 or swt-mozilla-gtk in swt.library.path, java.library.path or the jar file
at org.eclipse.swt.internal.Library.loadLibrary(Library.java:219)
at org.eclipse.swt.internal.Library.loadLibrary(Library.java:151)
at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:309)
... 3 more

然后当我尝试使用 SWT.MOZILLA 标志时,我得到了

Exception in thread "main" org.eclipse.swt.SWTError: No more handles [Could not detect registered XULRunner to use]
at org.eclipse.swt.SWT.error(SWT.java:3589)
at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:280)
at org.eclipse.swt.browser.Browser.<init>(Browser.java:109)
at browser.Main.createGUI(Main.java:40)
at browser.Main.main(Main.java:21)

我怀疑这部分是因为我使用的是 XULRunner2,但我更喜欢使用 WebKit,它在 Eclipse 3.7 中(这就是我升级的原因)在使用 SWT.NONE 时应该是默认设置。

如果你们中的任何人遇到过这个问题和/或之前已经解决过,如果你能帮助我,我将不胜感激。

谢谢!

【问题讨论】:

    标签: java eclipse browser webkit swt


    【解决方案1】:

    根据SWT FAQ,您可能有不受支持的 XULRunner2(尝试旧版本)。您还应该检查您是否为 WebKit 浏览器核心安装了 WebKitGTK+ 1.2.x。

    编辑

    根据您的 cmets 进行编辑。根据this FAQ,您应该在库加载路径中有 WebKitGTK 1.2.0 或更新版本,因此请检查您是否有.. 并使用 SWT.NONE 创建浏览器..

    您从 SWT 收到的错误消息说,您应该在路径上没有库 java.lang.UnsatisfiedLinkError: no swt-mozilla-gtk-3346 or swt-mozilla-gtk in swt.library.path, java.library.path or the jar file

    【讨论】:

    • 如何检查 WebKitGTK+? libgtk-1.0-2 已从 Ubuntu 档案中删除。我不知道还有什么办法得到它。我可以使用#import 让浏览器在 GTK 中运行,但 Java 无法识别它? O_O
    • 试试这种方式Ubuntu WebKit但我不是linux用户..你试过旧版本的XULRunner吗?
    • 是的,我做到了。我试了两次。它适用于 C 和 Python,但不适用于 SWT 我不想降级我的 XULRunner。我更喜欢 Webkit 而不是 Mozilla
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-11
    • 1970-01-01
    • 2010-09-18
    • 2020-09-16
    相关资源
    最近更新 更多