Instruções de Instalação do Produto
A plataforma fornece ferramentas padrão para atualização e extensão de
produtos. Para participar dos mecanismos da plataforma para atualização
e extensão de produtos, seu produto empacotado deve seguir as diretrizes
a seguir. Isso permitirá que seu produto coexista sem problemas
ou até mesmo que aperfeiçoe outros produtos com base no Eclipse.
Considere novamente o exemplo de estrutura de diretórios do produto acmeweb:
acmeweb/
acmeweb.exe
eclipse/
.eclipseproduct
eclipse.exe
startup.jar
install.ini
.config/
platform.cfg
jre/
features/
com.example.acme.acmefeature_1.0.0/
feature.xml
...
plugins/
com.example.acme.acmefeature_1.0.0/
plugin.xml
about.ini
about.html
about.mappings
about.properties
acme.png
plugin_customization.ini
splash.jpg
welcome.xml
com.example.acme.acmewebsupport_1.0.0/
...
links/
...
De onde vieram esses arquivos? Vamos olhar o conteúdo do produto da
perspectiva da equipe de desenvolvimento. Os arquivos instalados podem ser
agrupados em cinco categorias principais:
- arquivos do produto de nível superior (como o acmeweb.exe)
- recursos e plug-ins do produto
- a própria plataforma do Eclipse
- o JRE (Java runtime environment)
- arquivos gerados pelo próprio processo de instalação
Um script de instalação adequado produzirá a estrutura de diretórios apropriada
fazendo o seguinte:
- permitindo que o usuário especifique o diretório de nível superior da instalação (como c:\acmeweb.
Nos referiremos a ele como acmeweb nas etapas restantes.)
- assegurando que um produto ainda não esteja instalado na localização
- copiando os arquivos como a seguir:
- Arquivos de produtos de nível superior são copiados para acmeweb
- Arquivos do Eclipse são copiados para acmeweb/eclipse utilizando as
estruturas de diretórios do recurso e do plug-in esperadas
- Arquivos JRE são copiados para acmeweb/eclipse/jre. Se um JRE já
estiver localizado em outro lugar, o atalho do aplicativo deverá ser configurado
para chamar o eclipse com o argumento de linha de comandos -vm para que a
localização do JRE seja conhecida da plataforma
- Recursos e plug-ins do produto são copiados para acmeweb/eclipse/features
e acmeweb/eclipse/plugins
- criando um arquivo marcador, .eclipseproduct, em acmeweb/eclipse.
O arquivo marcador é um arquivo de formato java.io.Properties que indica
o nome, o ID e a versão do produto.
- armazenando as informações de instalação necessárias (usuário, licença, data) que devem ser mostradas
no diálogo Sobre em acmeweb/eclipse/plugins/com.example.acmefeature_1.0.0/about.mappings
- se o mecanismo de recurso principal (pré R3.0) for utilizado para definir o produto, substitua o acmeweb/eclipse/install.ini pelo que configura a propriedade feature.default.id para o recurso principal do produto
- chamando o executável do produto utilizando a opção -initialize.
Isso faz com que a plataforma execute silenciosamente todo o processamento inicial
demorado e armazene os resultados em cache para que, quando o usuário iniciar o produto,
ele apareça prontamente em um estado pronto para negócios.
Problemas de Multiusuários
Quando um produto é instalado com a intenção de compartilhar a instalação entre vários usuários,
deve-se tomar cuidado ao separar dados individuais de usuários (como o diretório
workspace) do diretório de instalação do produto compartilhado.
Problemas de Desinstalação
Quando um produto é desinstalado, os conceitos a seguir são importantes.
- todos os arquivos nos diretórios eclipse/features e eclipse/plugins
devem ser removidos, mesmo se não tiverem sido instalados originalmente
pelo programa de instalação. Isso assegura que os arquivos incluídos pelo
gerenciador de atualização da plataforma sejam removidos quando o produto for
removido.
- exceto pelo ponto descrito acima, apenas os arquivos instalados pelo
programa de instalação em outros diretórios devem ser removidos. É
importante preservar dados essenciais, como o diretório workspace,
para que
a reinstalação do produto após uma desinstalação produza os resultados
esperados.
Reinstalando o Produto
Quando o produto já estiver instalado, o instalador deve permitir um serviço
de atualização ou upgrade, se estiver disponível. A existência do produto pode ser
confirmada procurando por acmeweb/eclipse/.eclipseproduct. As
informações nesse arquivo de marcador podem ser utilizadas para confirmar com o usuário de que o
produto correto esteja sendo atualizado. A disponibilidade de atualizações pode ser
confirmada com as correspondências de padrões em relação aos nomes de recursos. Por exemplo, a
presença de acmeweb/eclipse/plugins/com.example.acmefeature_1.0.1 poderia
indicar que a atualização da versão 1.0.1 já foi aplicada ao produto.
Após o estabelecimento da validade da reinstalação, o programa de instalação deve
copiar ou substituir arquivos conforme necessário. Se a versão da plataforma Eclipse
de base não tiver sido alterada, há a possibilidade de diretórios inteiros
serem ignorados. Os números das versões anexados aos recursos e plug-ins
da plataforma podem ser utilizados para determinar se alguma alteração sob um diretório
de plug-in ou de recurso é necessária.
Informações adicionais sobre a instalação de produtos podem ser encontradas em Como
gravar um instalador do Eclipse.