Os componentes do Eclipse são apresentados como ficheiros de arquivo. Cada arquivo contém uma recolha de funções e plug-ins. Geralmente, os arquivos contêm todas as funções que um determinado componente têm para oferecer. É frequente que os consumidores necessitem de mais de um componente e/ou necessitem apenas de partes de alguns componentes. Se não houver qualquer assistência, os consumidores têm de obter manualmente os arquivos que contenham o super-conjunto da função de que necessitam de extrair manualmente as funções e os plug-ins requeridos. Esta acção pode ser um processo laborioso e propenso a erros.
Felizmente, o PDE contém um mecanismo orientado por agrupamento, que consiste no empacotador que pode facultar ajuda. Resumindo, o empacotador considera como entrada de dados uma lista de arquivos que contém funções e uma lista de funções interessantes. Em seguida, obtém zips, extrai as funções (e os respectivos plug-ins) e volta a colocá-las nos pacotes de um zip de saída.
Em seguida é apresentado um conjunto de passos básicos para iniciar o empacotador.
Recomenda-se que construa pacotes *nix numa máquina *nix para assegurar
que as permissões de ficheiros estão preservadas.
java -jar <eclipse install>/startup.jar -application org.eclipse.ant.core.antRunner
-buildfile <<eclipse install>/plugins/org.eclipse.pde.build_<version>/scripts/package.xml>
-DpackagingInfo=<path to your packaging configuration directory>
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
baseDirectory |
O directório onde se dá todo o empacotamento |
workingDirectory |
O directório onde são gerados os scripts.
O valor no modelo é ${baseDirectory}/workingPlace |
downloadDirectory |
A pasta para a qual são descarregados os arquivos.
O valor no modelo é ${baseDirectory}/toPackage |
tempDirectory |
A pasta para a qual serão extraídos os
arquivos. O valor no modelo é ${baseDirectory}/temp |
featurePaths |
O nome da raiz dos arquivos descarregados.
O valor no modelo é eclipse. |
featureList |
Uma lista separada por vírgulas de id de
função que pretende voltar a empacotar. |
componentFilter |
Uma lista separada por vírgulas de
componentes a partir das quais as funções na featureList podem ser encontradas.
Esta lista filtra os arquivos disponíveis e permite que o empacotador
optimize o conjunto de ficheiros descarregados. |
contentFilter |
Uma lista separada por vírgulas de tipos
de conteúdos a obter. Esta lista filtra um conjunto de arquivos
disponíveis e permite que o empacotador optimize o conjunto de ficheiros
descarregados. |
config
|
Uma lista separada por "&" de configurações (triplas separadas por vírgulas compostas por sistema operativo, sistema de apresentação em janelas e arquitectura) para voltar a empacotar. (por exemplo: win32, win32, x86 & linux, gtk, x86) |
archivesFormat |
Os formatos dos arquivos. Uma lista
separada por "&" de configurações - formato. (por exemplo: win32, win32, x86 - antZip & linux, gtk, ppc - tar).
Se não estiver especificado nenhum formato de arquivo para uma
determinada configuração, o formato predefinido é antZip. |
zipargs |
Argumentos adicionais para serem transmitidos para o zip |
unzipargs |
Argumentos adicionais para serem
transmitidos para unzip |
archivePrefix |
O prefixo do(s) arquivo(s) resultante(s) |
collectingFolder |
O nome da pasta de raiz do arquivo resultante. |
buildId |
Controla o id de construção no nome
predefinido do arquivo. |
buildType |
Tipo de construção utilizado na
denominação da saída de construção. Tipicamente um de I, N, M, S, ... |
buildLabel |
Etiqueta para a construção. O valor modelo é ${buildType}.${buildId} |
archiveNamePrefix |
Controla o nome do arquivo resultante.
O valor predefinido é ${buildId} |
packagingProperties |
Um caminho relativo para o ficheiro que
contém os ficheiros de raiz de empacotamento de propriedades. Por
predefinição, este caminho indica packaging.properties. |
deltaPack |
Se deve ou não gerar um pacote delta.
Irá excluir partes independentes da plataforma e agrupar todas as
configurações num único arquivo. |