2009-06-25 15 views
5

He estado investigando OSGi por un tiempo y me pregunto cuál es la mejor manera de tratar con bibliotecas "heredadas" (que se publican como JAR simples, no como paquetes OSGi).OSGi y bibliotecas heredadas

¿Cuál crees que es la mejor manera de manejar estos? Modificar su archivo de manifiesto y agregar la información mínima específica del paquete, luego reempaquetarlos es lo que hago en este momento, pero de alguna manera me parece incorrecto. ¿Debería utilizar la gestión de dependencia manual para estos JAR (hago esto para aquellas bibliotecas que tienen una alta probabilidad de ser utilizadas solo en una determinada parte de mi aplicación)?

Por lo que están disponibles, estoy usando paquetes para Eclipse (ya que estoy utilizando Equinox como plataforma OSGi, esto funciona bien para aquellas bibliotecas que están disponibles como paquetes).

¿Hay algún repositorio de paquetes además de los Eclipse-bundles que deba conocer?

+0

Me muero de ganas de entrar en cosas de OSGi. Necesito colarlo en el trabajo de alguna manera. – skaffman

Respuesta

2

También hay Eclipse Orbit que tiene una serie de paquetes pre-envasados ​​para uso de Eclipse. Y en lugar de modificar el manifiesto del paquete directamente, puede crear un paquete envoltorio que proporcione el Manifiesto usted mismo, e incluir el Contenedor como está con un encabezado Bundle-ClassPath: foo.jar. Es ligeramente menos eficiente hacerlo de esta forma, ya que en el tiempo de ejecución, foo.jar se extrae (al menos, en Equinox) pero puede ser más fácil para usted administrar el proceso de compilación con eso.

El Spring Repo es también una buena fuente de librerías de código abierto que se han OSGi'ified.