如何让 SWT 浏览器控件在 Windows 上使用 Mozilla 而不是 IE?

Posted

技术标签:

【中文标题】如何让 SWT 浏览器控件在 Windows 上使用 Mozilla 而不是 IE?【英文标题】:How to make SWT Browser control use Mozilla instead of IE on Windows? 【发布时间】:2011-01-06 09:39:11 【问题描述】:

我想让 SWT 在我运行我的应用程序的所有平台上使用 Firefox。但是 SWT 当然默认在 Windows 上使用 IE。知道如何让 SWT 在 Windows 上使用 Mozilla。我知道我需要在机器上安装 XULRunner。

【问题讨论】:

【参考方案1】:

你问的很有趣 - 我的项目也需要同样的问题。

    转到 ATF 站点 (http://wiki.eclipse.org/ATF/Installing) - 了解如何从 Zend 站点下载 XUL Runner。 此代码可让您在不注册 XULRunner 的情况下运行浏览器:

代码:

Bundle bundle = Platform.getBundle("org.mozilla.xulrunner"); //$NON-NLS-1$
if (bundle != null) 

    URL resourceUrl = bundle.getResource("xulrunner"); //$NON-NLS-1$
    if (resourceUrl != null) 
        try 
            URL fileUrl = FileLocator.toFileURL(resourceUrl);
            File file = new File(fileUrl.toURI());
            System.setProperty("org.eclipse.swt.browser.XULRunnerPath",file.getAbsolutePath()); //$NON-NLS-1$
         catch (IOException e) 
            // log the exception
         catch (URISyntaxException e) 
            // log the exception
        
    

更多详情:http://www.eclipse.org/swt/faq.php#howusemozilla

注意:我的代码与常见问题解答(不同的插件 ID)略有不同 - 我这样为我工作。

【讨论】:

旧的。过时的。已弃用。【参考方案2】:

我刚刚找到了答案。

    您需要在您的机器上注册 XULRunner。为此,只需解压缩它,然后在命令 shell xulrunner.exe --register-global 中执行此命令。 将SWT.MOZILLA 样式传递给浏览器构造函数:Browser browser = new Browser(shell, SWT.MOZILLA);

【讨论】:

我是这个错误,找不到解决办法:java.lang.UnsatisfiedLinkError: org.eclipse.swt.internal.mozilla.init.XPCOMInit.GREVersionRange_sizeof()I 当我运行xulrunner.exe --register-global 时,它告诉我Error: couldn't parse application.ini

以上是关于如何让 SWT 浏览器控件在 Windows 上使用 Mozilla 而不是 IE?的主要内容,如果未能解决你的问题,请参考以下文章

如何阻止 git 在 cygwin 上使文件不可执行?

java如何内置visio控件

swt,jface,rcp

Eclipse中如何配置SWT

如何在 xp 和 windows 7 上运行 SWT 应用程序

SWT 按钮下拉控件