2015-04-18 7 views
2

В настоящее время я пытаюсь начать разработку/использование пакетов OSGi с использованием eclipse. Проблема в том, что сочетание eclipse/OSGi действительно сложно настроить и, кажется, очень тяжело. Я создал простой пакет Hello World с активатором. Я пытаюсь запустить его как «OSGi framework», но я получаю спам от ошибок/исключений. Во-первых, я получаю много тезисов:Разработка плагинов с использованием eclipse

!ENTRY org.eclipse.update.configurator 4 0 2015-04-18 15:03:31.119 
!MESSAGE Could not install bundle plugins/org.eclipse.team.core_3.7.0.v20130514-1224.jar A bundle is already installed with the name "org.eclipse.team.core" and version "3.7.0.v20130514-1224" 

Я получаю это за каждый комплект, который поставляется с затмением. После этого я получаю следующее исключение:

org.osgi.framework.BundleException: Exception in org.eclipse.debug.internal.ui.DebugUIPlugin.start() of bundle org.eclipse.debug.ui. 
Caused by: java.lang.IllegalStateException: Workbench has not been created yet. 

После этого я получаю исключение, связанное с причалом (почему?)

org.osgi.framework.BundleException: Exception in org.eclipse.equinox.http.jetty.internal.Activator.start() of bundle org.eclipse.equinox.http.jetty. 
Caused by: org.osgi.service.cm.ConfigurationException: default : Permission denied 
Caused by: java.net.SocketException: Permission denied 

Это кажется много неприятностей для получения программы для печати «Hello World ». Кто-нибудь знает, как настроить eclipse для подключаемых проектов?

+0

Вы пытаетесь создать плагин eclipse? Если это так, вы можете запустить его как приложение eclipse. Щелкните правой кнопкой мыши> Отладка как> приложение eclipse, а не osgi. – user43968

+0

Нет, просто простой плагин. – hfhc2

+0

Похоже, вы создаете плагин hello world eclipse, поэтому я думаю, что вы должны запускать его как приложение eclipse, и все будет правильно. – user43968

ответ

2

Ну, как оказалось, затмение немного неряшливо, когда дело доходит до создания нового проекта. В Juno вы можете либо создать проект «Plug-in Project», либо проект Plug-in Development> Plug-in Project ». Первый - плагин eclipse, последний - обычный пакет OSGi. Это, к сожалению, называется.

Я создал новый проект OSGi расслоения, новую «OSGi Framework» конфигурацию и добавил необходимость:

org.apache.felix.gogo.command 
org.apache.felix.gogo.runtime 
org.apache.felix.gogo.shell 
org.eclipse.osgi.console 

и свой собственный комплект (com.vogella.osgi.firstbundle) к Связке. Теперь все работает нормально, поток запускается и печатает на консоль, и я могу вводить команды вроде ss/start и т. Д.

Смежные вопросы