Como se ha escrito en las respuestas anteriores, tiene dos opciones si desea utilizar bibliotecas adicionales en sus paquetes:
- incrustación de frascos de la biblioteca en un paquete en el que se va a utilizar,
- la creación de una paquete OSGi válido de la biblioteca.
El primera aproximación es más sencillo, ya que sólo tiene que copiar los tarros de la biblioteca (y todas sus dependencias) a un paquete (por ejemplo, a un directorio raíz) y luego añadirlos a Bundle-Classpath
elemento en MANIFEST.MF
(ver here) . Sin embargo, al hacer esto, debe recordar que esta biblioteca agregada solo será visible en un paquete en el que esté incrustada (para que la reutilización de la biblioteca sea limitada). Siempre puede agregar paquetes de esta biblioteca al elemento Export-package
en MANIFEST.MF
para hacerlo visible para otros paquetes, pero esto está lejos de ser una solución elegante (sin embargo, funcionará).
Con el fin de hacer que sea visible para otros paquetes que debe utilizar el segundo método , es decir, crear un paquete OSGi de la biblioteca (existen herramientas que pueden ayudarle en hacer eso, también en Eclipse). Sin embargo, para bibliotecas más complicadas, este enfoque puede ser más difícil (debido a las dependencias y al enfoque de carga de clase específica en OSGi).
Así que si desea utilizar la biblioteca solo en un paquete, le sugiero usar el primer enfoque (es más fácil de implementar). Si desea utilizar esta biblioteca en muchos paquetes en su aplicación, debe considerar el segundo enfoque.