I am using third party code, which uses some jar (actually, this is log4j). When running my plugin, I am getting multiple errors ClassNotFoundException
, NoClassDefFoundError
. Since third-party code usage is limited to some ViewPart
yet, then the program is running, but view is not instantiated.
At compile time in Eclipse I have added required jars into class path, as usual, and code has no any errors at compile time, including import
directives for log4j
.
Since I put all (many) required jars into lib
subdirectory of my project directory, I thought to modify build.properties
as below
source.. = src/
output.. = bin/
bin.includes = plugin.xml,\
META-INF/,\
lib/,\
.
But apparently this didn't help.
Where can I see my entire bundle/plug-in compiled packed to check which jars are contained there?
UPDATE
Currently I put required jars twice.
First one -- into normal Eclipse Configure Build Path
window:
Second one -- into Classpath
section of Runtime
tab of plugin.xml
editor:
Latter config makes the following change in build.properties
file:
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/
So is it possible to AUTOMATE this some how? Is it possible to AUTOMATICALLY pass all conventional classpath entries to runtime?
I need SIMPLIFICATION, I don't want to wrap jars into bundles and something similar.
The question is open.