Встраивание приложения XULRunner на Java

Моя цель - заставить Limewire(JAVA) и Songbird(XULRunner) работать вместе.

Я думал, что лучший способ - запустить приложение XUL (songbird) внутри свинг-панели JAVA. Есть ли другой способ?

Было бы лучше или возможно иметь GUI полностью в XUL, а затем каким-то образом получить доступ к моим объектам JAVA?

Как бы я поступил так?

Спасибо

6 ответов

Решение

Взгляните на JRex, так как он может дать вам пару идей.

Кроме этого, я бы также исследовал Rhinohide.

Взгляните на DJ Native Swing, нативную реализацию Swing с использованием SWT и Xulrunner.

Я бы изучил исходный код Limewire. Если между пользовательским интерфейсом и остальной частью приложения есть четкое разделение, я бы попытался найти решение для создания экземпляра и вызова не-пользовательского кода Limewire из расширения Songbird.

В настоящее время я изучаю XUL для нового продукта и наткнулся на JavaXPCOM, который позволяет коду Java взаимодействовать с объектами XPCOM. Я все еще думаю о стеке Mozilla, но насколько я понимаю, все приложения XULRunner используют XPCOM. Поэтому кажется, что вы должны иметь возможность встраивать Songbird с таким подходом.

Официальная реализация XUL от Mozilla и сильно зависит от Gecko. Gecko не написан на Java и не встроен в AWT/Swing/SWT (по крайней мере, без использования JNI).

Итак, короткий ответ: нет. Вы должны либо использовать JNI, либо использовать тяжелые, сложные и неполные сторонние библиотеки.

Однако JavaXPCOM, похоже, позволяет встраивать Gecko: https://developer.mozilla.org/en/JavaXPCOM Но в этом случае вы будете зависеть от Gecko... и я не знаю, достаточно ли этого для запуска Songbird.

Я хотел бы взглянуть на встраивание xulrunner в eclipse swt: http://www.eclipse.org/swt/faq.php

Другие вопросы по тегам