1

Я разработал плагин eclipse, и я пытаюсь установить его на другой экземпляр eclipse. Когда я запускаю/отлаживаю свой плагин как приложение eclipse, все работает правильно. Проблема возникает только после установки плагина через сайт обновления, который я создал.ClassNotFoundException при создании экземпляра плагина eclipse

Я создал очень простой сайт обновлений, который включает в себя одну функцию с моим плагином, упакованным в нее. После установки с использованием сайта обновления я могу увидеть свой плагин в каталоге plugin в каталоге установки eclipse, и он правильно содержит все данные, которые должны быть там (я думаю). Тем не менее, когда я создаю экземпляр плагина (путем нажатия на ключевое связывание, которое я определил), я получаю ClassNotFoundException для основного класса плагина, который я создал, и который можно найти в каталоге bin моего плагина.

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

Я немного поболтал об этом и нашел много связанных проблем, ни одна из которых не ударила по моей конкретной ситуации. Буду признателен за любое предложение!

+0

Как вы определяете привязку клавиш? Это в файле plugin.xml или где-то еще? –

+0

Да, я определяю его через plugin.xml. Здесь есть некоторые подробности: http://stackoverflow.com/questions/18519534/key-binding-for-a-custom-eclipse-content-assist/18601197#18601197 – Dana

+0

Добавили ли вы пакет, содержащий 'javaCompletionProposalComputer' в список 'Export-Package' в' MANIFEST.MF', чтобы плагин jdt мог его найти? –

ответ

1

При создании плагина другие плагины могут получить доступ только к классам в пакетах, объявленных в разделе «Экспорт-пакет» в Manifest.mf. Откройте редактор plugin.xml и посмотрите вкладку «Runtime» - для этого вам нужно будет указать свой пакет. Что-то вроде этого:

enter image description here

+1

Спасибо. В моем случае все выглядит немного иначе, чем на скриншоте, но мне в основном пришлось добавить мой каталог bin в путь к среде выполнения. Довольно странно, что это не делается по умолчанию, но эй, по крайней мере, сейчас он работает :) – Dana

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