Utilice el archivo de manifiesto de la característica de Liberty para declarar qué paquetes desea compartir como una API o SPI con otras aplicaciones y características en el entorno de ejecución de Liberty.
Acerca de esta tarea
Un paquete no se puede declarar como una API o SPI a menos que esté exportado por un paquete en la característica de Liberty y aparezca en la lista de la cabecera Export-Package del archivo de manifiesto del paquete.
Procedimiento
Para especificar los paquetes de API y SPI para un proyecto de características de Liberty, siga estos pasos:
- En la vista Explorador de proyectos, abra el archivo de manifiesto de característica del proyecto de características
de Liberty efectuando una doble pulsación en el nodo Manifiesto en la jerarquía del proyecto, indicado por el icono de
manifiesto (
).
- Para que haya uno o varios paquetes de API disponibles para las aplicaciones OSGi, pulse Añadir en el panel Paquetes de API de IBM.
- Cuando cree su propia característica de Liberty, instálela en la extensión del producto de usuario, y cualquier otra característica que esté instalada en la extensión del producto de usuario podrá acceder a todos los paquetes en la característica. Para que haya uno o varios paquetes de SPI disponibles para las características en otras extensiones de producto, pulse Añadir en el panel Paquetes de SPI de IBM.
- (Opcional) Para especificar la versión del paquete, seleccione el paquete, pulse Propiedades y especifique el valor necesario en el campo Versión.
- (Opcional) Para un paquete de API, seleccione el tipo de paquete en la lista Tipo en el recuadro de diálogo Propiedades. El tipo puede ser uno de los valores siguientes:
- spec: indica una API proporcionada por un cuerpo estándar como, por ejemplo, javax.servlet o org.osgi.framework.
- ibm-api: indica una API de valor añadido proporcionada por IBM®.
- api: indica una API definida por el usuario. Éste es el valor predeterminado.
- third-party: indica una API que está visible, pero no está controlada por IBM. Normalmente, son paquetes de código abierto.
- internal: indica paquetes que no son de API que se deben exponer a las aplicaciones para que funcionen. Puede utilizarse si se ha mejorado, o entramado, el código de bytes del código Java™ para añadir referencias al código interno en el tiempo de ejecución.
Resultados
Los nombres de paquete se añaden a las cabeceras IBM-API-Package y IBM-SPI-Package en el archivo de manifiesto de característica. Para obtener más información sobre las cabeceras en el archivo de manifiesto de característica de una característica de Liberty, consulte Archivo de manifiesto de característica de Liberty.