2013-06-24 2 views
1

У меня есть простой Java-проект (а не проект плагина), который я хочу добавить в classpath плагина eclipse, который я разрабатываю. Но в веб-проектах я могу добавить этот проект как путь сборки, и он отлично работает. Но я пробовал то же самое в плагине eclipse, я могу скомпилировать его успешно, но во время выполнения я получаю java.lang.ClassNotFoundException.Добавление простого Java-проекта как classpath в плагин eclipse

Я знаю OSGi довольно хорошо, и я знаю, как добавить OSGi в путь к классам (используя экспортные пакеты), но я хочу добавить стандартный проект non-osgi в путь к классам, чтобы я не получал ошибки времени выполнения , В любом случае, я могу это достичь?

Я могу экспортировать проект как файл jar или сделать его проектом плагина, и он будет работать нормально. Но это не мой вариант в настоящее время, потому что, все же этот API находится в стадии предварительного альфа, и будет много изменений. Поэтому я стараюсь избегать боли при экспорте его как файла jar каждый раз. Есть ли у меня вариант, кроме этого?

+0

Любая причина, по которой вы не делаете проект простой Java проектом OSGi? Добавление OSGi-манифеста не помешает вам использовать проект в качестве библиотеки jar в обычных Java-приложениях. – Tobber

ответ

1

У меня такая же ситуация: я хочу, чтобы не зависимые от OSGi Maven зависимости интегрировались в classpath моего плагина. Я преуспел с круговым решением, которое, я думаю, лучшее, что я мог бы получить.

У меня есть шаг сборки за пределами Eclipse, где я копирую файлы классов зависимостей в папку lib плагина. Папка lib указана в MANIFEST.MF в качестве записи в Bundle-ClassPath и (здесь идет взлом) в качестве источник папка в build.properties. Это был единственный способ заставить плагин работать как при запуске из Eclipse, так и при экспорте.