Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как собрать и заставить работать приложение отдельно от среду IDE Eclipse.

21K
25 сентября 2006 года
Alexander.ru
1 / / 25.09.2006
Hello, ALL!

Необходимо собрать и заставить работать приложение отдельно от среду IDE Eclipse.

Есть исходники приложения для Eсlipse (Java) и исходники плагинов для этого приложения (Java).
1. Собираю приложение Eslipse (под Win32) след. образом
File -> Export -> Plug-in Development -> Eclipse product
получаю лаунчер exe и файлы .eclipseproduct и startup.jar папку configuration с файлом config.ini
2. Собираю все плагины след образом
File -> Export -> Plug-in Development -> Deployable plug-ins and fragments
получаю папку plugins с собранными плагинами в JAR файлах.
3. Перемечаю папку plugins в папку с exe
также помещаю в папку plugins необходимые для работы приложения плагины org.eclipse.*
4. Запускаю exe.
получается вот такая ошибка. (См. конец сообещния)
Не подскажете в что я делаю неправильно и как правильно собрать и запустить приложение независимо от IDE ?

В среде IDE Eclipse 3.2 без отладки и с отладкой все запускется и работает нормально.


Код:
!SESSION Mon Sep 25 16:49:37 MSD 2006 ------------------------------------------
!ENTRY org.eclipse.core.launcher 4 0 2006-09-25 16:49:37.674
!MESSAGE Exception launching the Eclipse Platform:
!STACK
java.lang.NullPointerException
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:186)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
    at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
    at org.eclipse.core.launcher.Main.run(Main.java:977)
    at org.eclipse.core.launcher.Main.main(Main.java:952)


Другими словами:
Мне по наследству достались исходники приложения и кучи плагинов.
Так вот из среды это все собирается и работает.
Я хочу сделать дистрибутив, т.е. независимый исполняемый пакет или модуль, т.е. что бы приложение работало независимо от самой среды разработки Eslipse IDE а именно с плагинами org.eclipse.core.runtime.*

Уточняю вопрос
Сделал плагин
Сделал заготовку .product.
Выгружаю .product поверх rcp-platform. Выгружаю туда же свой плагин (выгрузка плагина с собой другие плагины не потянула почему-то, да и rcp-платформу не выгружает, только ланчер).
Докомплектовываю мою платформу required плагинами. Вроде всё что нужно готово.

Запускаю, появляется мой splash, а потом сообщение об ошибке. и лог:
Код:

Код:
!SESSION Mon Sep 25 16:49:37 MSD 2006 ------------------------------------------
!ENTRY org.eclipse.core.launcher 4 0 2006-09-25 16:49:37.674
!MESSAGE Exception launching the Eclipse Platform:
!STACK
java.lang.NullPointerException
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:186)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
    at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
    at org.eclipse.core.launcher.Main.run(Main.java:977)
    at org.eclipse.core.launcher.Main.main(Main.java:952)


С другой стороны, если взять за основу не RCP платформу а eclipse-binary, то там плагины благополучно себе работают.

Собственно вопрос:
как получить готовое RCP приложение, если есть только проекты плагинов (MyApplication implements IPlatformRunnable сидит в главном, остальные от него зависят). Т.е.:
- как првильно создать .product,
- как всё это хозяйство выгрузить?
20K
24 октября 2006 года
Aumn
9 / / 24.10.2006
делается это так:

1. На папке проекта щелкаете пр.кн.мыши->New->Other->Plug-in Development->Product Configuration->Next

2. Вводите в поле File name чтонить типа Abracadabra.product
3. Выбираете чекбокс: Use an existing product
4. Нажимаете Finish
Появляется файл Abracadabra.product, открываете его (если он еще не открыт). Для проверки нажмите Launch the product - программа должна запуститься (вроде писали что из среды все работает нормально). Закрываете ее.
5. Внизу редактора этого файла (редактора продукта) будет три закладки: Overview, Configuration и Branding. Выбираете Configuration
6. Нажимаете кнопку: Add Required Plug-ins (в списке слева добавляется все необходимые вашей программе плагины)
7. Выбераете закладку Branding
8. Что-нибудь вводите в поле Launcher Name (имя запускетмого файла) (можете еще чтонить указать, но потом)
9. Возвращаетесь на вкладку Overview
10. Нажимаете Eclipse Product export wizard
11. В группе Export Destination, выбираете чекбокс Directory и выбираете директорию куда хотите запихать продукт отдельный от эклипса (я указал c:\tmp)
12. В группе Export Options, ставите галочку Export for multiple platforms
13. Нажимаете Next
14. В списке выбираете интересующие платформы (я выбрал linux(gtk/x86) и win32(win32/x86))
15. И нажимаете кнопку Finish!!!!!!!!!!!!!!!!!
63
07 ноября 2006 года
Zorkus
2.6K / / 04.11.2006
Да, и еще убедитесь, что стоит нужная версия JRE, иначе возможно любые непредсказуемости:)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог