As Opções de Tempo de Execução do Eclipse
Última modificação em 4 de agosto de 2004, quarta-feira às 14:45
A plataforma do Eclipse é altamente configurável. A entrada de configuração toma a
forma de argumentos da linha de comandos e de configurações de propriedades do sistema. Em muitos casos, os argumentos da linha de comandos são apenas atalhos para definição das
propriedades do sistema relacionado. Na verdade, existem muito mais definições de propriedades do sistema do que argumentos da linha de comandos.
Argumentos da Linha de Comandos
Abaixo, estão listados os argumentos da linha de comandos processados por várias partes
do tempo de execução do Eclipse. Muitos desses valores também podem ser especificados
utilizando propriedades do sistema na linha de comandos utilizando argumentos -D VM ou especificando lá valores em um arquivo config.ini.
Utilizando essa última técnica, é possível personalizar seu Eclipse sem utilizar
nenhum argumento da linha de comandos.
Para cada argumento na lista, é fornecida sua chave correspondente de propriedade do
sistema (entre {}). Também é fornecida a camada de tempo de execução do Eclipse na qual
o argumento da linha de comandos é processado (entre ()). Isso é útil para pessoas que substituem partes do tempo de execução para atender a necessidades especiais.
- -application <id> (Tempo de execução)
- equivalente à definição eclipse.application
para <id>
- -arch <architecture> (OSGi)
- equivalente à definição osgi.arch para <architecture>
- -clean (OSGi) NEW
- equivalente à definição osgi.clean para "true"
- -configuration <location> (Principal)
- equivalente à definição osgi.configuration.area
para <location>
- -console [port] (OSGi) NEW
- equivalente à definição osgi.console para [port]
ou a cadeia vazia se a porta padrão tiver que ser utilizada (por exemplo, quando a
porta não é especificada)
- -consoleLog (Tempo de execução)
- equivalente à definição eclispe.consoleLog para
"true"
- -data <location> (OSGi)
- equivalente à definição osgi.instance.area
para <location>
- -debug [options file] (OSGi)
- equivalente à definição osgi.debug para [options
file] ou a cadeia vazia para apenas ativar a depuração (por exemplo, se a localização
do arquivo de opções não for especificada)
- -dev [entries] (OSGi)
- equivalente à definição osgi.dev para [entries] ou a
cadeia vazia para apenas ativar o modo dev (por exemplo, se as entradas não forem especificadas)
- -endSplash <command> (Principal)
- especifica o comando a ser utilizado para descer a tela splash. Geralmente
fornecido pelo executável do Eclipse.
- -feature <feature id> (Tempo de execução)
- equivalente à definição eclipse.product
para <feature id>
- -framework <location> (Principal) NEW
- equivalente à definição osgi.framework para
<location>
- -initialize (Principal)
- inicializa a configuração que está sendo executada. Todas as estruturas e caches de dados relacionadas ao tempo de execução são atualizadas. Nenhum dado de configuração definido do usuário/plug-in é limpo. Nenhum aplicativo é executado, todas as especificações do produto são ignoradas e nenhuma UI é apresentada (por exemplo,
a tela splash não é desenhada)
- -install <location> (Principal)
- equivalente à definição osgi.install.area para
<location>
- -keyring <location> (Tempo de execução)
- a localização do banco de dados de autorização no disco. Esse argumento deve ser
utilizado junto com o argumento -password.
- -nl <locale> (OSGi)
- equivalente à definição osgi.nl para <locale>
- -noLazyRegistryCacheLoading (Tempo de execução)
- equivalente à definição eclipse.noLazyRegistryCacheLoading
para "true"
- -noRegistryCache
(Tempo de execução)
- equivalente à definição eclipse.noRegistryCache
para "true"
- -noSplash (Executável, Principal)
- controla se a tela splash é mostrada ou não
- -os <operating system> (OSGi)
- equivalente à definição osgi.os para <operating system>
- -password <password> (Tempo de execução)
- a senha para o banco de dados de autorização
-
- -pluginCustomization <location> (Tempo de execução)
- equivalente à definição eclipse.pluginCustomization para
<location>
- -product <id> (OSGi) NEW
- equivalente à definição eclipse.product para
<id>
- -showSplash <command> (Principal)
- especifica o comando a utilizar para mostrar a tela splash. Geralmente
fornecido pelo executável do Eclipse.
- -user <location> (OSGi) NEW
- equivalente à definição osgi.user.area para <location>
- -vm <path to java executable> (Executável, Principal) NEW
- quando transmitida ao executável do Eclipse, essa opção é utilizada para localizar o
Java VM a ser utilizado para executar o Eclipse. Deve ser o caminho completo do sistema
de arquivo para um executável Java apropriado. Se não for especificado, o executável do Eclipse utilizará um algoritmo de procura para localizar um VM adequado. De qualquer maneira, o executável transmite o caminho ao VM real utilizado para o
Java Main utilizando o argumento -vm. O Java Main, então,
armazena esse valor em eclipse.vm.
- -vmargs [vmargs*] (Executável,
Principal) NEW
- quando transmitida ao Eclipse, essa opção é utilizada para personalizar a operação
do Java VM a ser utilizada para executar o Eclipse. Se especificada,
essa opção deve vir no final da linha de comandos. Mesmo que não seja especificado
na linha de comandos do executável, o executável incluirá automaticamente os argumentos
relevantes (incluindo a classe que está sendo ativada) na linha de comandos transmitida
ao Java utilizando o argumento -vmargs.
O Java Main, então, armazena esse valor em eclipse.vmargs.
- -ws <window system> (OSGi)
- equivalente à definição osgi.ws para <window system>
Argumentos obsoletos da linha de comandos
Os argumentos da linha de comandos a seguir não são mais relevantes ou foram substituídos
e são consumidos pelo tempo de execução e não são transmitidos ao aplicativo que está
sendo executado para manter a compatibilidade de retrocesso. .
- -boot
- consulte a -configuration
- -classLoaderProperties
- não é mais relevante
- -firstUse
- não é mais relevante
- -newUpdates
- não é mais relevante
- -noPackagePrefixes
- não é mais relevante
- -noUpdate
- não é mais relevante
- -plugins
- não é mais relevante
- -update
- não é mais relevante
Outros
Os argumentos da linha de comandos a seguir são definidos por vários plug-ins do Eclipse
e serão suportados apenas se o plug-in de definição for instalado, resolvido e ativado.
- -noVersionCheck (workbench)
- <description>
- -perspective (workbench)
- <description>
- -refresh (org.eclipse.core.resources)
- <description>
- -showLocation (org.eclipse.ui.ide.workbench)
- <description>
- -allowDeadlock
- <description>
Propriedades do sistema
As propriedades do sistema a seguir são utilizadas pelo tempo de execução do Eclipse. Observe que aquelas que começam com "osgi" são específicas da implementação da estrutura OSGi, enquanto aquelas que começam com "eclipse" são particulares do tempo de
execução do Eclipse com camada no topo da estrutura OSGi.
Muitas dessas propriedades têm equivalentes da linha de comandos (consulte a seção argumentos da linha de comandos e o valor entre os símbolos {}). Os usuários têm liberdade para utilizar as definições da linha de comandos ou de
propriedade para especificar um valor. As propriedades
podem
ser definidas
das
seguintes
maneiras:
- utilize -DpropName=propValue como um argumento VM para Java VM
- defina a propriedade desejada no arquivo config.ini na área de configuração
apropriada
- eclipse.application {-application}
- o identificador do aplicativo a ser executado. O valor fornecido aqui substitui
qualquer aplicativo definido pelo produto (consulte eclipse.product) que está sendo executado
- eclipse.commands
- sdf
- eclipse.consoleLog
- se "true", qualquer saída do log também será enviada ao System.out do Java (geralmente de volta à shell de comando, se houver). Útil quando combinado com -debug
- eclipse.debug.startupTime
- o tempo em milissegundos quando o Java VM para essa sessão foi iniciado
- eclipse.exitcode
- <description>
- eclipse.exitdata
- <description>
- eclipse.manifestConverter
- o nome de classe da classe do conversor do manifesto a utilizar ao converter arquivos
plugin.xml de legado em arquivos manifest.mf
- eclipse.noExtensionMunging
- se "true", a extensão do registro do legado é deixada como está. Por padrão, tais extensões são atualizadas para utilizar os novos ids do ponto de extensão localizados no Eclipse 3.0.
- eclipse.noLazyRegistryCacheLoading {-noLazyRegistryCacheLoading}
- se "true", a otimização do carregamento de cache de registro de plug-in da
plataforma será desativada. Por padrão, os elementos de configuração são carregados a partir do cache de registro (quando disponível) apenas on demand, reduzindo a base
da memória. Essa opção força o carregamento total do cache de registro na inicialização.
- eclipse.noRegistryCache {-noRegistryCache}
- se "true", o cache de registro de extensão interno não é lido nem gravado
- eclipse.pluginCustomization {-pluginCustomization}
- a localização do sistema de arquivos de um arquivo de propriedades que contém
configurações padrão para preferências do plug-in. Essas definições padrão substituem as definições padrão
especificadas no recurso principal. Os caminhos relativos são interpretados em relação
ao diretório de trabalho atual para o próprio eclipse.
- eclipse.product {-product}
- o identificador do produto que está sendo executado. Ele controla várias informações
sobre marca e qual aplicativo é utilizado.
- eclipse.vm {-vm}
- o caminho para o executável Java utilizado para executar o Eclipse. Essas informações
são utilizadas para construir linhas de comandos reativadas.
- eclipse.vmargs {-vmargs}
- lista os argumentos VM utilizados para executar o Eclipse. Essas informações
são utilizadas para construir linhas de comandos reativadas.
- osgi.adaptor
- o nome da classe do adaptador de estrutura OSGi a utilizar.
- osgi.arch {-arch}
- consulte -arch
- osgi.baseConfiguration.area
- asf
- osgi.bundles
- A lista separada por vírgulas de pacotes que são automaticamente instalados e
opcionalmente iniciados depois que o sistema está ativo e em execução. Cada entrada tem a forma:
<URL | simple bundle location>[@ [<start-level>] [":start"]]
se start-level (>0 inteiro) for omitido, a estrutura utilizará o nível de inicialização padrão para o pacote. se a marcação "start" for incluída,
o pacote será marcado como iniciado depois de ser instalado.
As localizações de pacotes simples são interpretadas como relativas ao diretório-pai
da estrutura.
O start-level indica o nível de inicialização de OSGi no qual o pacote deve ser
executado. Se esse valor não for definido, o sistema computará um padrão apropriado.
- osgi.clean
- se definido para "true", qualquer dado em cache utilizado pela estrutura de OSGi e pelo tempo de execução do Eclipse
será limpo. Isso limpará os caches utilizados para armazenar resolução de dependência de
pacote configurável e os dados de registro da extensão. A utilização dessa opção
forçará o eclipse a reinicializar esses caches.
- osgi.configuration.cascaded
- se definido como "true", essa configuração será feita em cascata para uma
configuração pai. Consulte a seção em localizações para obter detalhes adicionais.
- osgi.configuration.area {-configuration}
- a localização da configuração para essa execução da plataforma. A configuração
determina quais plug-ins serão executados e também várias outras configurações do sistema.
Consulte a seção em localizações para obter detalhes adicionais.
- osgi.configuration.area.default
- a localização da configuração padrão para essa execução da plataforma. A configuração
determina quais plug-ins serão executados e também várias outras configurações do sistema.
Esse valor (por exemplo, a definição padrão) será utilizado apenas se nenhum valor para osgi.configuration.area for definido. Consulte a seção em localizações para obter detalhes adicionais.
- osgi.console {-console}
- se definido para um valor não-nulo, o console do OSGi (se instalado) será ativado.
Se o valor for um inteiro adequado, ele será interpretado como a porta na qual o
console atende e direcionará sua saída para a porta determinada.
Útil para investigar o estado do sistema.
- osgi.console.class
- o nome da classe do console a ser executado, se solicitado
- osgi.debug {-debug}
- se definida para um valor não-nulo, a plataforma será colocada no modo de depuração. Se o valor for uma cadeia, ele será interpretado como a localização do arquivo .options. Esse arquivo indica quais pontos de depuração estão disponíveis para um plug-in e se eles
estão ativados ou não. Se uma localização não for especificada, a plataforma procurará
o arquivo .options no diretório de instalação.
- osgi.dev {-dev}
- se definido como cadeia vazia, o modo dev será apenas ligado. Essa propriedade
pode também ser definida como entradas de um caminho de classe separadas por vírgula,
que são incluídas no caminho de classe de cada plug-in ou um URL para um arquivo de
propriedades Java que contém adições do caminho de classe personalizado para um conjunto
de plug-ins. Para cada plug-in que requer um caminho de classe de tempo dev personalizado,
o arquivo conterá uma entrada do formulário
<id de plug-in>=<lista separada por vírgulas de entradas do caminho de classe a incluir>
onde o id de plug-in "*" corresponde a qualquer plug-in não mencionado de outra maneira.
- osgi.framework
- a localização do URL da estrutura do OSGi. Útil se a instalação do Eclipse estiver
desconectada. Consulte a seção em localizações para obter detalhes adicionais.
- osgi.frameworkClassPath
- uma lista separada por vírgulas de entradas do caminho de classe para a implementação da estrutura do OSGi.
As localizações relativas são interpretadas em relação à localização da estrutura
(consulte osgi.framework)
- osgi.install.area {-install}
- a localização de instalação da plataforma. Essa definição indica a localização dos
plug-ins do Eclipse básico e será útil se a instalação do Eclipse estiver desconectada.
Consulte a seção em localizações para obter detalhes adicionais.
- osgi.instance.area {-data}
- a localização dos dados da instância para essa sessão. Os plug-ins utilizam esse local para armazenar seus dados. Por exemplo, o plug-in de Recursos o utiliza como a
localização padrão para projetos (aka o espaço de trabalho). Consulte a seção em localizações para obter detalhes adicionais.
- osgi.instance.area.default
- a localização de dados da instância padrão para essa sessão. Os plug-ins utilizam esse local para armazenar seus dados. Por exemplo, o plug-in de Recursos o utiliza como a
localização padrão para projetos (aka o espaço de trabalho). Esse valor (por exemplo,
a definição padrão) será utilizada apenas se nenhum valor para osgi.instance.area for
definido. Consulte a seção em localizações para obter detalhes adicionais.
- osgi.manifest.cache
- o local em que os manifestos gerados são descobertos e gerados. O padrão está na área
de configuração, mas o cache do manifesto pode ser armazenado separadamente.
- osgi.nl {-nl}
- o nome do locale no qual a plataforma do Eclipse será executada. Os valores NL devem
seguir as convenções de nomenclatura do locale Java padrão.
- osgi.os {-os}
- o valor do sistema operacional. O valor deve ser um dos nomes de arquitetura do
processador do Eclipse conhecido do Eclipse (por exemplo, x86, sparc, ...).
- osgi.splashLocation
- a localização do URL absoluto da tela splash (arquivo .bmp) a ser mostrada durante
a inicialização do Eclipse. Essa propriedade substitui qualquer valor definido em osgi.splashPath.
- osgi.splashPath
- uma lista de URLs separada por vírgulas para procurar um arquivo chamado splash.bmp.
Essa propriedade é substituída por qualquer valor definido em osgi.splashLocation.
- osgi.user.area {-user}
- a localização da área do usuário. A área do usuário contém dados (por exemplo, preferências) específicos ao usuário do S.O. e independentes de qualquer instalação,
configuração ou instância do Eclipse. Consulte a seção em localizações para obter detalhes adicionais.
- osgi.user.area.default
- a localização padrão da área do usuário. A área do usuário contém dados (por exemplo, preferências) específicos ao usuário do S.O. e independentes de qualquer instalação,
configuração ou instância do Eclipse. Esse valor (por exemplo, a definição padrão) será utilizada apenas se nenhum valor for definido para
osgi.user.area. Consulte a seção em localizações para obter detalhes adicionais.
- osgi.ws {-ws}
- o valor do sistema de janelas. O valor deve ser um dos nomes do sistema de janelas
do Eclipse conhecido do Eclipse (por exemplo, win32, motif, ...).
- osgi.syspath
- <xxx ainda utilizado? corrija o nome>
Localizações
O tempo de execução do Eclipse define várias localizações que dão aos desenvolvedores de plug-in o contexto para leitura/armazenamento de dados e aos usuários do
Eclipse um controle sobre o escopo do compartilhamento e visibilidade de
dados. O Eclipse define as seguintes noções de localização:
- Usuário (-user) {osgi.user.area} [@none, @noDefault, @user.home, @user.dir,
filepath, url]
- As localizações do usuário são específicas para figuras, usuários. Geralmente, a
localização do usuário é baseada no valor da propriedade do sistema
user.home
Java, mas pode ser substituída. Informações como preferências de escopo do usuário e informações de login podem ser encontradas na localização do
usuário.
- Instalação (-install) {osgi.install.area} [@user.home, @user.dir, filepath,
url]
- Uma localização de instalação é onde o próprio Eclipse está instalado. Na prática,
essa localização é o diretório (geralmente "eclipse") pai do
startup.jar ou do eclipse.exe em execução. Essa localização deve ser considerada
de leitura para usuários normais, uma vez que uma instalação pode ser compartilhada
por muitos usuários. É possível definir a localização de instalação e separar startup.jar do restante do Eclipse.
- Configuração (-configuration) {osgi.configuration.area} [@none, @noDefault,
@user.home, @user.dir, filepath, url]
- As localizações de configuração contêm arquivos que identificam e gerenciam o
(sub)conjunto de uma instalação a ser executada. Dessa forma, pode haver muitas configurações por instalação.
As instalações podem vir com uma área de configuração padrão, mas os cenários de
inicialização típicos envolvem a tentativa do tempo de execução em encontrar uma
localização de configuração mais gravável.
- Instância (-data) {osgi.instance.area} [@none, @noDefault, @user.home,
@user.dir, filepath, url]
- As localizações da instância contêm artefatos de dados definidos pelo usuário. Por exemplo, o plug-in de Recursos utiliza a área da instância como a localização do
espaço de trabalho e, assim, a home padrão para os projetos. Outros plug-ins são livres para gravar os arquivos que quiserem nessa localização.
Enquanto os usuários podem definir qualquer uma dessas localizações, o Eclipse calculará
padrões justos se os valores não forem fornecidos. O usecase mais comum para definir a
localização é a área da instância ou, no contexto IDE, o espaço de trabalho. Para executar a configuração do Eclipse padrão em um conjunto de dados específico, você pode especificar:
eclipse -data c:\mydata
Detalhes adicionais
Localizações são URLs. Para simplificar, os caminhos de arquivos também são aceitos e
automaticamente convertidos em arquivo: URLs. Para melhor controle e conveniência, há também várias localizações simbólicas predefinidas que podem ser utilizadas. Observe que
nem todas as combinações de tipo de localização e valor simbólico são válidas. Uma tabela
abaixo detalha quais combinações são possíveis. Como o caso padrão é para todas as
localizações a serem definidas, válidas e graváveis, alguns plug-ins podem falhar em outras
configurações mesmo que sejam listados como possíveis. Por exemplo, não é justo esperar que um plug-in focado em dados do usuário (por exemplo, o plug-in de Recursos do Eclipse) faça
muito se a área da instância não for definida. É tarefa dos desenvolvedores de plug-in
escolher as configurações que eles suportam e projetar sua função de acordo.
- @none
- Indica que a localização correspondente nunca deve ser definida seja explicitamente
ou para seu valor padrão. Por exemplo, um aplicativo de estilo RCP que não tem dados
de usuário pode utilizar osgi.instance.area=@none para evitar que arquivos estranhos
sejam gravados no disco. @none não deve ser seguido por nenhum
segmento de caminho adicional.
- @noDefault
- Força uma localização a ser não-definida ou definida explicitamente (por exemplo, o
Eclipse não calculará automaticamente um valor padrão). Isso é útil onde você quer
permitir dados na localização correspondente, mas o valor padrão do Eclipse
não é apropriado. @noDefault não deve ser seguido por nenhum
segmento de caminho adicional.
- @user.home
- Direciona o Eclipse a calcular um valor de localização relativo ao diretório home
do usuário. @user.home pode ser seguido por segmentos de
caminho adicionais. Em todos os casos, a cadeia "@user.home" é
simplesmente substituída pelo valor da propriedade do Sistema "user.home" Java. Por exemplo, definir
osgi.instance.area=@user.home/myWorkspace
resulta em um valor de
file:/users/bob/myWorkspace
- @user.dir
- Direciona o Eclipse a calcular um valor de localização relativo ao diretório de
trabalho atual. @user.dir pode ser seguido por segmentos
de caminho adicionais. Em todos os casos, a cadeia "@user.dir" é
simplesmente substituída pelo valor da propriedade do Sistema "user.dir" Java. Por exemplo, definir
osgi.instance.area=@user.dir/myWorkspace
resulta em um valor de
file:/usr/share/eclipse/myWorkspace
localização/valor |
suporta padrão |
arquivo/URL
|
@none
|
@noDefault
|
@user.home
|
@user.dir
|
instância
|
sim
|
sim
|
sim
|
sim
|
sim
|
sim (padrão)
|
configuração
|
sim
|
sim
|
sim*
|
sim*
|
sim
|
sim
|
install
|
não
|
sim
|
não
|
não
|
sim
|
sim
|
usuário
|
sim
|
sim
|
sim
|
sim
|
sim
|
sim
|
* indica que essa configuração é tecnicamente possível, mas pragmaticamente muito
difícil de gerenciar. Em particular, sem uma localização de configuração, o tempo de
execução do Eclipse pode apenas iniciar a estrutura do OSGi.
