Paquetes de aplicaciones, paquetes de uso y paquetes de suministro
Los paquetes de aplicación son específicos de una instancia y cada instancia de una aplicación incluye su propia instancia del paquete. Los paquetes compartidos no son específicos de una instancia y una única instancia de un paquete o servicio de un paquete compartido puede ser utilizada por muchas aplicaciones. Los paquetes compartidos se subdividen adicionalmente en paquetes de uso y paquetes de suministro.
Paquetes de aplicación
Los paquetes de aplicación son paquetes que se crean específicamente para la aplicación. Son específicos de cada instancia o aislados; es decir, no están pensados para ser compartidos. El manifiesto de aplicación hace referencia a ellos en la cabecera Application-Content.
Paquetes compartidos
Los paquetes compartidos no son específicos de una aplicación. Varias aplicaciones pueden utilizar una única instancia de un paquete de un paquete compartido. Los paquetes compartidos no pueden importar paquetes o servicios de paquetes de aplicación. Los paquetes compartidos deben proporcionarse mediante referencia en lugar de contenidos directamente en una aplicación.
- Paquetes de uso
- Un paquete de uso proporciona al menos un paquete al paquete de aplicación. Los paquetes de uso son paquetes compartidos a los que se hace referencia en el manifiesto de aplicación en la cabecera Use-Bundle.
- Paquetes de suministro
- Un paquete de suministro proporciona al menos un paquete o servicio a un paquete de aplicación, un paquete de uso u otro paquete de suministro. No se hace referencia a los paquetes de suministro en el manifiesto de aplicación, y la aplicación no sabe cómo se cumple el requisito de cada paquete de suministro.
Si tiene dos aplicaciones OSGi separadas y desea que compartan las mismas clases de API, puede empaquetar dichas clases como un paquete de uso y luego hacer referencia de dicho paquete en la cabecera Use-Bundle de ambos manifiestos de aplicación. Para los administradores, otra ventaja de los paquetes de uso es que se pueden supervisar y actualizar utilizando la consola de administración o mandatos wsadmin.
Terminología de suministro de paquete y uso de paquete
- El archivo de paquetes empresariales (EBA) de la aplicación.
- El repositorio de paquetes interno.
- Los repositorios de paquetes OSGi externos.
Lospaquetes de aplicación se pueden almacenar en el archivo EBA o en un repositorio. Los paquetes compartidos se almacenan en un repositorio (de lo contrario, no se pueden compartir).
- Paquetes de referencia
- Un paquete de referencia es un paquete al que se hace referencia en el manifiesto de aplicación y que se almacena en un repositorio.
- Paquetes de dependencia
- Un paquete de dependencia es un paquete al que no se hace referencia en el manifiesto de aplicación, pero que lo utilizan los paquetes a los que sí se hace referencia en el manifiesto de aplicación, u otros paquetes de dependencia.
- Los paquetes de aplicación que no se incluyen directamente en el archivo EBA son paquetes de referencia específicos de una instancia.
- Los paquetes de uso son paquetes de referencia compartidos.
- Los paquetes de provisión son paquetes de dependencia compartidos.