Empaquetar componentes de Eclipse

Los componentes de Eclipse se suministran en forma de archivadores. Cada archivador contiene una colección de características y plug-ins. Generalmente, los archivadores contienen todas las funciones que ofrece un componente determinado. Con frecuencia, se da el caso de que los clientes necesiten más de un componente y/o sólo necesiten partes de algunos componentes. Sin ayuda, los clientes deberían extraer manualmente los archivadores que contienen el superconjunto de la función que necesitan y, a continuación, extraer manualmente las características y plug-ins necesarios. Este puede ser un proceso laborioso y generador de errores.

Afortunadamente, el PDE contiene un mecanismo orientado a proceso por lotes, el empaquetador (packager), que puede ayudarle. En pocas palabras, el empaquetador toma como entrada una lista de archivadores que contienen características y una lista de características de interés. A continuación, extrae los zips, extrae las características (y sus plug-ins) y los reempaqueta en un zip de salida.

Inicio rápido

A continuación figura un conjunto de pasos básicos de iniciación del empaquetador.  Es aconsejable construir paquetes *nix en una máquina *nix para garantizar la conservación de los permisos de archivo.

  1. Cree un directorio de configuración de empaquetado y copie en él los archivos de plantilla (packager.properties, packaging.properties y customTargets.xml) de org.eclipse.pde.build/templates/packager.
  2. Edite los archivos packager.properties copiados y establezca las siguientes propiedades:
  3. Obtenga los archivos de correlación del empaquetador.  Las propiedades siguientes controlan la descarga de los archivos de correlación:
    El script empaquetador concatenará todos los archivos *.map encontrados en ${directorioDescarga}. Para descargar más de un archivo de correlación o para extraerlos de CVS, edite el archivo customTargets.xml y cambie el destino getMapFiles.
  4. Ejecute el empaquetador mediante el siguiente mandato:
  5. java -jar <instalación eclipse>/startup.jar -application org.eclipse.ant.core.antRunner 
    -buildfile <<instalación eclipse>/plugins/org.eclipse.pde.build_<versión>/scripts/package.xml>
    -DpackagingInfo=<vía de acceso al directorio de configuración de empaquetado>

Formato del archivo de correlación del empaquetador

Los archivos de correlación del empaquetador se utilizan para describir los diversos archivadores, su contenido y desde dónde pueden descargarse.  Son similares a los archivos de correlación utilizados en el proceso de construcción para extraer paquetes de repositorios.  El formato de una entrada del archivo de correlación del empaquetador es el siguiente:
nombreArchivador = url | [listaConfig] | [directorio] | descripciónContenido | nombreComponente

Tenga en cuenta que los valores listaConfig y directorio son opcionales, pero es importante seguir utilizando el número adecuado de separadores "|".
Ejemplos:
eclipse-SDK-3.1-win32.zip=http://download.eclipse.org/downloads/drops/R-3.1-200506271435/ | win32,win32,x86 | | sdk | eclipse
eclipse-PDE-3.1.zip=http://download.eclipse.org/downloads/drops/R-3.1-200506271435/ | | | runtime | pde

Propiedades de configuración del empaquetador

Las propiedades siguientes pueden establecerse en el archivo packager.properties de configuración del empaquetador:
baseDirectory
El directorio en el que tendrá lugar todo el empaquetado
workingDirectory
El directorio en el que se generarán los scripts.  El valor de la plantilla es ${baseDirectory}/workingPlace
downloadDirectory
La carpeta en la que se descargarán los archivadores.  El valor de la plantilla es ${baseDirectory}/toPackage
tempDirectory
La carpeta en la que se extraerán los archivadores.  El valor de la plantilla es ${baseDirectory}/temp
featurePaths
Nombre del directorio raíz de los archivadores descargados.  El valor de la plantilla es eclipse
featureList
Lista separada por comas de los ID de característica que deben reempaquetarse
componentFilter
Lista separada por comas de los componentes en los que pueden encontrarse las características indicadas en featureList.  Filtra los archivadores disponibles y permite al empaquetador optimizar el conjunto de archivos descargados.
contentFilter
Lista separada por comas de los tipos de contenido que deben extraerse.  Filtra el conjunto de archivadores disponibles y permite al empaquetador optimizar el conjunto de archivos descargados.
config
Lista separada por signos "&" de configuraciones (tripletes formados por sistema operativo, sistema de ventanas y arquitectura separados por comas) que deben reempaquetarse.  (Por ejemplo: win32, win32, x86 & linux, gtk, x86)
archivesFormat
Los formatos de los archivadores. Lista separada por signos "&" de configuración- formato.  (Por ejemplo: win32, win32, x86 - antZip & linux, gtk, ppc - tar).  Si no se especifica ningún formato de archivador para una configuración determinada, el formato predeterminado es antZip.
zipargs
Argumentos adicionales que deben pasarse a zip.
unzipargs
Argumentos adicionales que deben pasarse a unzip.
archivePrefix
El prefijo de los archivadores resultantes.
collectingFolder
Nombre de la carpeta raíz del archivador resultante.
buildId
Controla el ID de construcción en el nombre predeterminado del archivador.
buildType
Tipo de la construcción, utilizado al denominar la salida de construcción.  Generalmente es I, N, M, S, ...
buildLabel
Etiqueta para la construcción.  El valor de plantilla es ${buildType}.${buildId}
archiveNamePrefix
Controla el nombre del archivador resultante.  El valor predeterminado es ${buildId}
packagingProperties
Vía de acceso relativa al archivo que contiene los archivos raíz de empaquetado de propiedades.  Por omisión, señala a packaging.properties.
deltaPack
Indica si debe generarse un paquete delta.  Esto excluirá las partes independientes de plataforma y agrupará todas las configuraciones en un solo archivador.

Empaquetado de archivos raíz

En el archivo packager.properties de configuración del empaquetador, la propiedad packagingProperties señala a un archivo de propiedades que especifica los archivos raíz que deben empaquetarse.  Por omisión, es el archivo packaging.properties.

Este archivo de propiedades debe contener las propiedades que especifican los archivos raíz necesarios.  Consulte la página Propiedades específicas de características para obtener detalles sobre las propiedades raíz.