Usando uma versão particular do java em um diretório específico

0

Minha versão padrão atual do Java é 7 (que, por enquanto, não pode ser atualizada - sei que chegou ao EOL), mas também tenho o Java 8 instalado.

No entanto, tenho alguns jars de terceiros (todos contidos em um diretório) que exigem o Java 1.8. Cada jar tem um script bash associado para verificar variáveis de ambiente relevantes e para construir o comando java necessário para executar o jar. Cada script bash assume que o comando para invocar java é, sem surpresa, java .

Existe uma maneira de eu mudar a versão do java que é executada quando java é invocado de 7 para 8 em esta pasta somente ?

    
por ChrisW 04.05.2016 / 14:39

1 resposta

1

Claro: adicione seu pwd à sua variável PATH , na posição mais significativa, ou seja, ,

 export PATH=.:$PATH

Você deve usar a versão acima, não export PATH=$PWD:$PATH porque, nesse caso, $PWD é avaliado no momento da origem do arquivo bash contendo o comando, enquanto você deseja que ele seja avaliado a cada Tempo.

Agora, crie um simbólico para a versão do java que você deseja usar, no diretório em que você precisa diferir da versão padrão:

ln -s /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java ./java

ou qualquer que seja o nome do seu executável.

Observe que incluir seu PWD em sua variável PATH é, no entanto, um risco de segurança em potencial.

    
por 04.05.2016 / 14:48

Tags