Отладка подключаемых модулей основной ветки Eclipse

Я получил исходный код подключаемых модулей основной ветки Eclipse (то есть предоставленный Eclipse Foundation) из CVS и импортировал один из них в Eclipse PDE (в данном случае org.eclipse.core.runtime). Это удалось, поскольку в источниках есть необходимые метаданные для PDE. Я поставил несколько точек останова и попытался запустить его из IDE с отладкой, предполагая, что это запустит новую копию IDE, чтобы только что созданный плагин заменил все, что в противном случае было бы загружено. Таким образом, я мог отлаживать внутренности Eclipse. Однако так не вышло. Сборка плагина на самом деле не удалась с буквально тысячами ошибок. Итак, должен ли исходный код Eclipse создаваться таким образом? Если есть лучший способ сделать это, я открыт для идей.


person Juho Östman    schedule 12.08.2011    source источник


Ответы (2)


Вы правы, ожидается, что вы проверите плагин и сможете сразу начать его взламывать и запускать новую версию... с одним требованием: ваша целевая платформа должна соответствовать версии плагина. Итак, если вы проверили последнюю версию, вам нужно установить самую последнюю ночную или интеграционную сборку в качестве целевой платформы. Если плагин относится к более старой версии (скажем, 3.6 или 3.5), вам необходимо установить соответствующую версию.

Самый простой способ настроить целевую платформу — загрузить соответствующую сборку, извлечь ее куда-нибудь, а затем добавить установку на целевую платформу (Window -> Preferences -> Plug-in Development -> Target Platform). Совет: добавьте его в качестве места установки.

person Danail Nachev    schedule 12.08.2011
comment
Это правильно и именно так мы работаем с самим Eclipse PDE :) - person Ankur; 16.08.2011
comment
Теперь у него должна быть соответствующая версия, однако он все равно не работает, жалуясь на ограничения доступа в rt.jar. Во всяком случае, намного лучше. Для компиляции плагина не может требоваться точная совпадающая версия, иначе возникнет проблема с начальной загрузкой для каждой версии. Разве в метаданных нет списков зависимостей и их соответствующих версий, и сборщик должен заметить, если версии слишком далеки? - person Juho Östman; 17.08.2011

Если у вас есть продукт, основанный на платформе, которую вы запускаете из Eclipse, и вы хотите установить контрольные точки в коде платформы, вам может быть лучше установить Eclipse SDK.

Справка -> Установить новое программное обеспечение -> Выберите сайт обновлений проекта Eclipse. Выберите Eclipse SDK. Это включает исходные пакеты для платформы.

Вы можете либо установить точку останова, просто нажав Ctrl-Click на классе, который вы хотите отладить, и найти соответствующее место, либо Ctrl-Shift-T, чтобы открыть тип напрямую.

Если вы просто являетесь последующим потребителем платформы, это намного проще, чем пытаться добиться соответствия версий.

person Ben Vitale    schedule 13.08.2011