Eu tenho um computador no qual intencionalmente instalei o JDK. Eu tenho outro computador com o JRE para, entre outras coisas, testar. No entanto, quando recebi um aplicativo java trabalhando neste computador e tentei em outro, ele reclamou que o JDK era necessário. Como posso verificar se o JDK foi instalado de alguma forma no meu sistema? Nota: o computador em questão é um Mac.
134
Respostas:
Você pode abrir o terminal e simplesmente digitar
isso deve mostrar a versão do java instalada no sistema (supondo que você tenha definido o caminho do java no ambiente do sistema).
E se você não tiver, adicione-o via
e se você não tiver certeza se possui java no seu sistema, use
find
no terminalie
find / -name "java"
fonte
Normalmente, uma instalação do jdk possui o javac nas variáveis do caminho do ambiente ... então, se você verificar o javac no caminho, é um bom indicador de que você tem o jdk instalado.
fonte
javac
no meu caminho, mas tenho um jdk instalado. (No meu caso, meu JAVA_HOME é pontiaguda paraC:\Program Files\Java\jdk1.8.0_45
)O @ maciej-cygan descreveu bem o processo, no entanto, a fim de encontrar o caminho do java:
$ which java
fornece o caminho do
java
arquivo binário, que é um arquivo vinculado no/usr/bin
diretório Próximo:$ cd /usr/bin/ && ls -la | grep java
encontre o local apontado, que é o seguinte (para mim):
depois
cd
para o diretório apontado para encontrar o diretório inicial real para Java. Próximo:$ ls -la | grep java
que é o seguinte neste caso:
Portanto, como é óbvio na captura de tela, meu diretório inicial Java é
/usr/lib/jvm/java-11-openjdk-amd64
. Então, nesse sentido eu preciso adicionar JAVA_HOME ao meu perfil bash (.bashrc
,.bash_profile
, etc. dependendo do seu OS) como abaixo:JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
Aqui está!
fonte
de acordo com a documentação JAVA, o JDK deve ser instalado neste caminho:
Consulte a parte do JDK de desinstalação em https://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html
Portanto, se você conseguir encontrar essa pasta, o JDK será instalado
fonte
Uma solução Java pura e genérica.
Para Windows e MacOS, pode-se inferir o seguinte (na maioria das vezes) ...
No entanto ... no Linux, isso não é tão confiável ... Por exemplo ...
openjdk
o caminhoPortanto, uma abordagem mais à prova de falhas é verificar a existência do
javac
executável.Aviso: Isso ainda falhará nos combos do JRE + JDK que relatam os JREs de forma
sun.boot.library.path
idêntica entre o JRE e o JDK. Por exemplo, o JDK do Fedora falhará (ou passará dependendo de como você o vê) quando o código acima é executado. Veja os testes de unidade abaixo para obter mais informações ...Testes unitários:
fonte
Uma solução apenas para macOS:
Onde
1.8+
está o Java 1.8 ou superior.Infelizmente, o
java_home
auxiliar não define o código de retorno adequado; portanto, verificar a falha exige a análise da saída (por exemplo2>&1 |grep -v "Unable"
), que varia de acordo com a localidade.Observe que o Java também pode existir
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin
, mas no momento em que escrevo isso, não conheço um JRE que o instale lá e que também contémjavac
.fonte