Uso de -d32 e -d64 ao iniciar o Java
Eu li abaixo trecho dePerguntas frequentes do JDK
Como seleciono entre as operações de 32 e 64 bits? Qual é o padrão? As opções -d32 e -d64 foram incluídas no iniciador Java para especificar se o programa deve ser executado em um ambiente de 32 ou 64 bits. No Solaris, eles correspondem aos modelos de dados ILP32 e LP64, respectivamente. Como o Solaris possui uma implementação J2SE de 32 e 64 bits contida na mesma instalação do Java, é possível especificar qualquer versão. Se nem -d32 nem -d64 for especificado, o padrão é executar em um ambiente de 32 bits.
Agora, para testar isso, entrei no meu SO convidado de 64 bits do Ubuntu e instalei a versão JDK de 64 bits -Linux x64 165.24 MB jdk-8u45-linux-x64.tar.gz
.
Depois de instalar o JDK, quando executo meu programa java usando-d64
tudo está como o esperado, porque na verdade é uma instalação de 64 bits, mas quando eu uso-d32
então eu recebo erro dizendoError - This Java instance does not support 32 bit JVM
.
O erro é compreensível para mim, mas o que me confunde é esta linha (como no parágrafo acima citado)"As opções -d32 e -d64 foram incluídas no iniciador Java para especificar se oprograma deve ser executado em um ambiente de 32 ou 64 bits ".
De acordo com essa linha, meu entendimento é que, ao iniciar o Java da versão de 64 bits,-d32
pode ser usado para iniciá-lo no modo de 32 bits.
Questões:
Meu entendimento está correto? E se estiver correto, estou recebendo erro?Se meu entendimento não for verdadeiro, por que preciso desses argumentos de linha de comando, porque quando inicio o Java usandojava
será iniciada qualquer instalação (JDK de 32 ou 64 bits) no meu PATH.