Я использую сторонний код, который использует некоторую банку (на самом деле это log4j). При запуске моего плагина я получаю несколько ошибок ClassNotFoundException
, NoClassDefFoundError
. Поскольку использование стороннего кода ограничено только ViewPart
, программа запускается, но представление не создается.Как добавить обычный банку в плагин (ClassNotFoundException, NoClassDefFoundError)?
Во время компиляции в Eclipse я добавил необходимые банки в класс, как обычно, и код не имеет ошибок во время компиляции, включая import
директивы для log4j
.
Так как я положил все (многие) необходимые банки в lib
подкаталоге моего каталога проекта, я думал изменить build.properties
ниже
source.. = src/
output.. = bin/
bin.includes = plugin.xml,\
META-INF/,\
lib/,\
.
Но, видимо, это не помогло.
Где я могу увидеть весь собранный пакет/плагин, скомпилированный для проверки, какие банки там содержатся?
UPDATE
В настоящее время я положить необходимые банки дважды.
Первый один - в обычный Eclipse, Configure Build Path
окна:
второй - в Classpath
раздел Runtime
вкладки plugin.xml
редакторов:
последней конфигурация делает следующее изменение в build.properties
файла:
source.. = src/
output.. = bin/
bin.includes = plugin.xml,\
META-INF/,\
lib/,\
.,\
lib/java-getopt-1.0.13.jar,\
lib/jsp-api-2.0.jar,\
lib/junit-4.11.jar,\
lib/log4j-1.2.17.jar,\
lib/rhino-1.7R4.jar,\
lib/servlet-api-6.0.36.jar,\
lib/tomcat-catalina-7.0.42.jar,\
lib/commons-logging-1.1.3.jar,\
lib/spring-beans-3.2.0.RELEASE.jar,\
lib/spring-core-3.2.0.RELEASE.jar,\
lib/miglayout-core-4.2.jar,\
lib/miglayout-swt-4.2.jar,\
conf/
Возможно ли это AUTOMATE это как-то? Можно ли АВТОМАТИЧЕСКИ передать все обычные записи в пути к runtime?
Мне нужно УПРОЩЕНИЕ, я не хочу обертывать банки в пучки и что-то подобное.
Вопрос открылся.
У меня пока нет продукта. Также я не понимаю, зачем сначала вставлять в пучок? Я кодирую Java, почему я не могу использовать банки? –
См. Обновленный ответ. –
Спасибо за рассуждение о создании отдельных пакетов для банок, но у меня есть уже сделанный код, и я хочу его обернуть. Он имеет обычные обычные зависимости. Это зависимости от внешних банок и целых внешних проектов. Eclipse позволяет добавлять и в проект плагина. Но я не понимаю, почему Eclipse (1) позволяет им и (2) игнорирует их. Было бы замечательно, если Eclipse либо запрещает записи, либо использует их. Нет смысла иметь неиспользованную функциональность. –