Как заставить управление SWT Browser использовать Mozilla вместо IE в Windows? - PullRequest
5 голосов
/ 18 января 2010

Я хочу, чтобы SWT использовал Firefox на всех платформах, на которых я запускаю свое приложение. Но SWT, конечно, по умолчанию использовал IE в Windows. Любая идея, как заставить SWT использовать Mozilla на Windows. Я знаю, что на машине должен быть установлен XULRunner.

Ответы [ 2 ]

6 голосов
/ 19 января 2010

Забавно, что вы спросили - мне просто нужно было то же самое для нашего проекта.

  1. Перейдите на сайт ATF (http://wiki.eclipse.org/ATF/Installing) - есть способ использовать XUL Runner с сайта Zend.
  2. Этот код позволит вам запустить браузер без регистрации 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

Примечание: мой код немного отличается от FAQ (другой идентификатор плагина) - я работаю для меня таким образом.

4 голосов
/ 18 января 2010

Я только что нашел ответ.

  1. Вам необходимо зарегистрировать XULRunner на вашем компьютере. Для этого просто распакуйте его и затем выполните эту команду в командной оболочке xulrunner.exe --register-global.
  2. Передать стиль SWT.MOZILLA конструктору браузера: Browser browser = new Browser(shell, SWT.MOZILLA);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...