I\'m creating an eclipse plug-in and I\'m having trouble with external jars. In my plug-in I start an application which requires some external jars. What do I have to do to expo
plugin.xml
Runtime
tab and add your JAR in the classpath sectionThe approach from Andy Thomas mostly works, but you also need to export the packages needed by the existing plugin in the new wrapper plugin so that they can be accessed by the plugin at runtime.
This is an easy way, though it does create an additional plug-in.
In Eclipse:
New>Other
, then Plug-in Development>Plug-in from existing JAR archives
.Java Build Path
on the Projects
tab.Edit: You may be able to combine the jars into your plug-in by instead combining both suggestions of Zsolt and user714965 below.
This is what has worked for me. If they are truly external, and this is a project for your company that is not going to be in the "wild" and you control the environment, and you have them out on the file system say at /opt/java/lib/somedir/some.jar you can tell the bundle where to find them by adding them to the Bundle-ClassPath entry in the MANIFEST.MF under META-INF. The syntax is: Bundle-ClassPath: ., external:/opt/java/lib/somedir/some.jar, external:/opt/java/lib/someotherdir/someother.jar
Also it would be prudent to use these in your build path so that you are working with the same jars in both build and runtime environments.
I have done this where the Jars are multi-purpose (such as apache-commons) on our file systems and again we control the environment.
Reference the following: http://www.eclipsezone.com/eclipse/forums/t51870.html
By following the steps below, the external JARs will be included when you export your plug-in:
lib
, but whatever works for you.build.properties
in your plug-in project and check the JARs you want to include in the build in the Binary Build section on the left.