Запуск окна / процесса SWT из приложения RCP - PullRequest
0 голосов
/ 01 марта 2010

Хорошо, у меня есть (n) приложение RCP (которое я не писал) и приложение, которое я разработал, используя только SWT. В основном я хочу импортировать и запускать основной метод приложения SWT с аргументами, чтобы он запускался в другом окне, как будто это другой процесс. Аргумент, который я хочу передать, является сложной структурой данных, которую я не хочу сериализовать.

Первоначально я думал, что я мог бы просто спроектировать свое приложение SWT в виде библиотеки и импортировать его, создать его оболочку и т. Д. Но я забыл подумать о том, как основной цикл приложения SWT должен выполняться в главном потоке, который кажется проблематичным. Поэтому я начал изучать возможность интеграции его с архитектурой плагинов eclipse. Проблема: я ничего не знаю об архитектуре подключаемого модуля eclipse или RCP, и когда я пытаюсь учиться, я сталкиваюсь с непостижимой стеной вещей, которые совершенно не похожи на то, что я хочу сделать (например, встраивание новых кнопок в рабочую среду eclipse) , Как начать разработку плагина, который просто запускает другое окно?

1 Ответ

1 голос
/ 02 марта 2010

Вам понадобится какая-то кнопка для запуска приложения, поэтому просто нужно подключиться к системе меню Eclipse.

Попытка:

1) В Eclipse Файл -> Новый проект-> Проект плагина

2) Убедитесь, что вы отметили «Этот плагин будет вносить вклад в пользовательский интерфейс»

3) Снимите флажок «генерировать активатор», так как он вам не понадобится

4) Выберите «Команда Hello World» из шаблона кода

Теперь у вас будет образец обработчика и метод execute, где вы можете вызывать свое SWT-приложение с дисплеем, который вы используете в RCP-приложении. Если вам действительно нужно вызвать void main (String [] args), вы можете получить отображение, вызвав Display.getDefault (), который либо создаст новое отображение, либо использует его из RCP-приложения.

Вам также придется изменить файл plugin.xml, чтобы он указывал на правильное меню в вашем RCP-приложении. Если вы хотите, чтобы ваша команда запуска была в меню файлов и т. Д.

Наконец, щелкните правой кнопкой мыши по своему проекту и выберите «Экспорт» -> «Разработка плагинов» и создайте jar-файл, в котором будет находиться ваш модуль запуска. Перетащите этот jar в папку плагинов RCP-приложения, и вы сможете запустить SWT-приложение из только что созданной команды.

Вероятно, на пути будет несколько ударов, но это примерно то, что вам придется сделать.

...