Para que serve a opção -D no arranque de Java?


Data de Publicação:

Atualizado:


Artigos > O que é a opção D (-D) especificada no arranque de Java?

status 2026 e uso seguro

Conclusão: coloque -Dname=value antes da classe principal ou do argumento -jar para definir uma propriedade do sistema JVM. O código Java lê com System.getProperty("name"); não é a mesma coisa que uma variável de ambiente do sistema operacional.

O que você aprenderá

  • Como o iniciador Java analisa as opções -D e onde o valor é armazenado.
  • Como inspecionar propriedades sem vazar segredos em linhas de comando ou listagens de processos.
  • Como o exemplo original do Java 11 é mapeado para as versões atuais do JDK suportadas.

A quem se destina: desenvolvedores e operadores Java que diagnosticam configurações de aplicativos específicas do ambiente.

Atualização para 2026: o mecanismo permanece atual, mas use um gerenciador de segredos ou uma fonte de configuração protegida para credenciais. O passo a passo abaixo registra o teste original do Java 11 e não deve ser lido como uma recomendação para colocar segredos em argumentos -D.

Nota de segurança: os comandos e exemplos de configuração do artigo original não foram novamente executados num ambiente de produção atual. Antes de os aplicar, confirme as versões suportadas, as cópias de segurança, os controlos de acesso e o procedimento de reversão num ambiente de teste isolado.

Fontes primárias oficiais

Visão geral

Uma propriedade de sistema é passada antes da classe principal ou da opção -jar, por exemplo "-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager". No Eclipse, adicione-a em "Configuração de execução ⇒ Argumentos da VM", como na imagem seguinte.

Eclipse ecrã

Esta secção explica o que acontece quando se acrescenta este '-DXXXXXXXX'.

Índice

  1. O que é a opção D (-D)?
  2. Conclusão

1. O que é a opção D (-D)?

A opção -D define uma propriedade de sistema na JVM durante o arranque. O programa pode depois lê-la com System.getProperty.

1-1. O que acontece se o executar com a opção D (-D)

No Eclipse, adicione "-Dtest=testoption" aos argumentos da VM da configuração de execução, como mostrado abaixo.

Eclipse ecrã

Criar uma classe principal simples, como se mostra abaixo.

Eclipse ecrã

A execução desta classe principal mostra que o valor "testoption" pode ser obtido com "test" como um argumento como se segue.

Eclipse ecrã

Quando uma propriedade de sistema é definida no arranque do Java, o respetivo valor pode ser obtido através da classe System.

2. Conclusão

A opção D (-D) ao iniciar Java permite recuperar valores da classe System. É utilizado, por exemplo, quando se pretende definir dinamicamente valores diferentes para ambientes diferentes.

■INFORMATION

Artigos


■PROFILE

Perfil


■Contacto

Contacto