Как мне прикрепить расположение исходного кода к плагинам в моей целевой платформе Eclipse RCP?
У меня есть рабочее пространство с несколькими проектами плагинов RCP.
Мы установили целевую платформу, поэтому мы можем создавать ее из стандартного набора плагинов, но не можем видеть исходный код и Javadoc для всех плагинов платформы.
Страница Windows -> "Настройки" -> "Разработка плагинов" -> "Целевая платформа" -> "Расположение исходного кода", кажется, не оказывает никакого влияния, когда я добавляю каталог eclipse (он позволяет только добавлять каталоги).
Копирование исходных jar-файлов из каталога eclipse в целевую платформу имеет аналогичный эффект.
Что я делаю неправильно? Как мне прикрепить набор исходных файлов к моей целевой платформе?
4 ответа
У меня была такая же проблема сегодня. В моем случае я хотел отладить источник встроенного джета (org.mortbay.jetty_5.1.14.v200806031611.jar), который поставляется с Eclipse Equinox (OSGI), который является частью моей целевой платформы затмения.
Когда отлаживался и хотел перейти в любой класс внутри пакета Jetty, я всегда получал сообщение, что это класс от Plugin-Dependencies и исходное вложение не может быть изменено.
Я решил это так:
- Переключиться на представление плагинов в Eclipse (Окно / Показать представление / Плагины)
- найдите пакет org.mortbay.jetty
- щелкните правой кнопкой мыши по этому пакету и выберите "Импортировать как" -> "Бинарный проект со связанным контентом"
Теперь, когда Bundle отображается в вашем Package Explorer как новый проект Eclipse, в моем случае org.mortbay.jetty.
Теперь щелкните правой кнопкой мыши на этом новом проекте в проводнике пакетов и выберите "Свойства / Путь сборки Java / Библиотеки". Вы видите файл jar Jetty там, и если вы развернете эту запись, вы можете редактировать "Source Attachment" как обычно. Я указал на загруженный исходный код Jetty, расположенный в совершенно другой папке, чем моя целевая платформа, которую я использую для своего проекта.
Если вы используете комплекты Eclipse SDK при создании целевой платформы, вам должны быть немедленно предоставлены "Java Source Attachment" и "Javadoc Location" для каждого плагина Eclipse. Например, я использовал "Eclipse Platform SDK" (eclipse-platform-SDK-3.4.2-win32) в качестве целевого пространства, и когда я отображаю "страницу местоположений исходного кода", о которой вы упомянули, она заполняется "местоположениями источника, объявленными в целевая платформа ". В Eclise IDE я могу увидеть исходный код плагинов ядра Eclipse и javadoc (например, в пакетах JFace).
В противном случае добавить исходный код плагинов не так просто, но добиться этого можно двумя способами:
- предоставление "исходного плагина" (самый простой способ, если поставщик плагина также предоставляет исходный плагин) в целевую платформу, как обычный плагин (PDE распознает его)
- предоставление дополнительного исходного местоположения (не простой способ...)
Дополнительную информацию о расположениях целевого исходного кода можно найти в справке Eclipse в следующем разделе:Руководство по среде разработки подключаемых модулей> Инструменты> Предпочтения> Предпочтения целевой платформы> Местоположения исходного кода
Все источники доступны, если вы загрузили сборку "Eclipse для разработчиков RCP и RAP" со страницы основных загрузок. По крайней мере, так называется сборка Juno, раньше она называлась Eclipse for RCP/Plug-in Developers
,
Похоже, что исходный код плагина больше не доступен через стандартные сборки Eclipse Java/J2ee. Я предполагал, что источники будут доступны через механизм обновления, но не смог найти правильный сайт / функцию обновления. Если кто-то знает, пожалуйста, прокомментируйте.
Я могу изменить целевую платформу во время выполнения, используя -install
вариант времени выполнения. Сохраните targetPlatform в качестве платформы затмения.
Тем не менее, это теряет много преимуществ использования целевой платформы в первую очередь - то есть безопасность времени компиляции.