如何使用Webkit在Ubuntu 11.04(Natty Narwhal)上运行Eclipse SWT Browser组件?

时间:2011-04-28 10:35:28

标签: linux eclipse gtk swt

我在Eclipse RCP应用程序中使用SWT Browser控件。在Linux Ubuntu 10.10上,这取决于用户安装了xulrunner-1.9.2。这很好。

然而,在Ubuntu 11.04上,我发现默认情况下它与xulrunner-2.0一起发布。 SWT浏览器不支持此功能。请参阅http://bugs.eclipse.org/bugs/show_bug.cgi?id=327696http://bugs.eclipse.org/bugs/process_bug.cgi

所以不要让用户安装xulrunner-1.9.2我想让SWT浏览器按照SWT常见问题解答中的说明运行WebKitGTK - http://www.eclipse.org/swt/faq.php#browserwebkitgtk

我根本无法使用它。我如何实现“WebKitGTK 1.2.0或更新版必须在库加载路径中”?

任何帮助非常感谢

4 个答案:

答案 0 :(得分:16)

对于在Ubuntu 12.04上运行的Eclipse Juno SR1(4.2 SR1),以下内容对我有用:

  1. 安装libwebkit软件包:sudo apt-get install libwebkitgtk-3.0-0
  2. 安装libwebkit jni包装器:sudo apt-get install libswt-webkit-gtk-3-jni
  3. 设置DefaultType和UseWebKitGTK属性(我是通过将以下内容添加到我的eclipse.ini文件中完成的):

     -Dorg.eclipse.swt.browser.DefaultType=webkit
     -Dorg.eclipse.swt.browser.UseWebKitGTK=true
    

答案 1 :(得分:8)

我不是在使用Ubuntu,但认为这并不重要。

  1. 检查libwebkit-1.0-2的版本(应该是> = 1.2.0)
  2. 如果缺席
  3. ,请安装此软件包
  4. 检查/usr/lib/usr/lib/jni是否在java.library.path
  5. 如果您使用SWT 3.6,还要检查是否安装了适当的webkit jni包装器(例如libswt-webkit-gtk-3.6-jniorg.eclipse.swt.browser.UseWebKitGTK系统属性设置为“True
  6. 编辑:本地化问题来源创建简约项目并显示输出

    package foo;
    
    import org.eclipse.swt.SWT;
    import org.eclipse.swt.SWTError;
    import org.eclipse.swt.browser.Browser;
    import org.eclipse.swt.widgets.Display;
    import org.eclipse.swt.widgets.Shell;
    
    public class BrowserTest {
    
        public static void main(String[] args) {
    
            System.out.println(System.getProperty("java.library.path"));
            System.out.println(System.getProperty("org.eclipse.swt.browser.UseWebKitGTK"));
    
            Display display = new Display();
            Shell shell = new Shell(display);
    
            try {
                Browser browser = new Browser(shell, SWT.NONE);
                browser.setSize(shell.getSize());
                browser.setUrl("google.com");
            } catch (SWTError e) {
                e.printStackTrace();
            }
    
            shell.open();
    
            while (!shell.isDisposed()) {
                if (!display.readAndDispatch()) {
                    display.sleep();
                }
            }
    
            display.dispose();
    
        }
    }
    

答案 2 :(得分:5)

只需通过软件中心安装“hotot”(Twitter)应用程序,它就会拖动WebKit,为我做了诀窍。 - “sudo apt-get install -y libwebkitgtk-1.0-0”,或根据https://help.ubuntu.com/community/WebKit从源代码构建,可能也会有效。

答案 3 :(得分:0)

对于Natty,请查看此页面:http://www.maplef.net/blog/archives/ubuntu-upgrade-eclipse3-5-to-3-6.html(忽略日本/中文,只需按照代码访问shangri-la)