Instalé JDK usando apt-get install pero no sé dónde está mi carpeta jdk. Necesito establecer el camino para eso. ¿Alguien tiene una pista sobre la ubicación?
/usr/local/java/
distribuciones originales descargadas de Oracle.
Instalé JDK usando apt-get install pero no sé dónde está mi carpeta jdk. Necesito establecer el camino para eso. ¿Alguien tiene una pista sobre la ubicación?
/usr/local/java/
distribuciones originales descargadas de Oracle.
Respuestas:
Esto depende un poco de su sistema de paquetes ... si el java
comando funciona, puede escribir readlink -f $(which java)
para encontrar la ubicación del comando java. En el sistema OpenSUSE en el que estoy ahora, regresa /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/bin/java
(pero este no es un sistema que usa apt-get
).
En Ubuntu, parece que está en /usr/lib/jvm/java-6-openjdk/
OpenJDK, y en algún otro subdirectorio de /usr/lib/jvm/
Suns JDK (y otras implementaciones, creo).
Para cualquier paquete dado, puede determinar qué archivos instala y dónde los instala consultando dpkg. Por ejemplo para el paquete 'openjdk-6-jdk':dpkg -L openjdk-6-jdk
/usr/lib/jvm/java-7-openjdk-amd64
.
readlink -f $(which javac)
: tenga en cuenta la 'c' en caso de que haya una extraña mezcla de JDK y JRE en la misma máquina. El JDK incluye un compilador (javac) y un JRE no. Sin embargo, si la ruta no es correcta, lo que fallará y puede intentar esto: find /usr/java -wholename '*ava/jdk*' -prune
como noto en un comentario a continuación.
update-java-alternatives -l
le dirá qué implementación de Java es la predeterminada para su sistema y en qué parte del sistema de archivos está instalada. Consulte el manual para más opciones.
apt-get
y la distribución son Debian 2.6.26
. AFAIK, debería ser el mismo para todos los derivados de Debian.
$ which java
debería darte algo como
/usr/bin/java
readlink -f $(which javac)
se imprime /usr/lib/jvm/java-8-oracle/bin/javac
. Esa carpeta bin NO es un JDK. Prueba general de ácido-base para ver si es un JDK para ver si la corriente $JAVA_HOME
contiene una ruta de lib/tools.jar
. En el reparto de /usr/lib/jvm/java-8-oracle/bin
eso no es cierto, por lo tanto, no es un JDK.
find /usr/java -wholename '*ava/jdk*' -prune
Pero el comportamiento depende de si estás hablando de OpenJDK u Oracle Java y cómo se instaló en primer lugar.
Esta pregunta se moverá pero puede hacer lo siguiente
which javac
o
cd /
find . -name 'javac'
Use buscar para ubicarlo. Debería estar debajo de /usr
alguna parte:
find /usr -name java
Al ejecutar el comando, si hay demasiados mensajes de "Permiso denegado" que ofuscan los resultados reales encontrados, simplemente redirija stderr a / dev / null
find /usr -name java 2> /dev/null
Otra mejor manera de encontrar la ruta de la carpeta Java es usar el alternatives
comando en Fedora Linux (sé que es para Ubuntu, pero llegué a esta publicación de Google solo por su título). Solo quiero compartir en caso de personas como yo buscando respuestas para el sabor de fedora.
Para mostrar toda la información sobre Java
alternatives --display java
Proceso de tres pasos: Primero: abra Terminal-> $ whereis java
daría una salida como esta:
java: /usr/bin/java /usr/share/java /usr/share/man/man1/java.1.gz
Segundo:
ls -l /usr/bin/java
daría una salida como esta:
lrwxrwxrwx 1 root root 22 Feb 9 10:59 /usr/bin/java -> /etc/alternatives/java
Tercero: la
ls -l /etc/alternatives/java
salida es la ruta JDK:
lrwxrwxrwx 1 root root 46 Feb 9 10:59 /etc/alternatives/java -> /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
Simple, pruébalo:
Es / usr / local / java / jdk [versión]
Esta pregunta todavía parece relevante, y la respuesta parece ser un objetivo en movimiento.
En mi sistema debian (buster):
> update-java-alternatives -l
java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64
Sin embargo, si realmente busca allí, verá que hay varios directorios y enlaces simbólicos colocados allí por el sistema de paquetes para simplificar el mantenimiento futuro.
El directorio real es java-11-openjdk-amd64
, con otro enlace simbólico de default-java
. También hay un openjdk-11
directorio, pero parece que solo contiene un archivo source.zip.
Dado esto, SOLO para Debian, supongo que el mejor valor para usar es /usr/lib/jvm/default-java
, ya que esto siempre debería ser válido, incluso si decide instalar una versión totalmente diferente de Java, o incluso cambiar de proveedor.
La razón normal para querer conocer la ruta es porque alguna aplicación la quiere, y probablemente no desee que la aplicación se rompa porque realizó una actualización que cambió los números de versión.
en OpenSUSE 13.1 / 13.2 its: /usr/lib64/jvm/java-1.6.0-openjdk-(version-number)
el número de versión puede ser 1.7.x 1.8.x etc. verifique la versión de bruja del administrador de software que ha instalado ...
André
En Linux Fedora30 están disponibles varias versiones del JDK completo de Java, específicamente los nombres de paquetes:
java-1.8.0-openjdk-devel.x86_64
java-11-openjdk-devel.x86_64
Una vez instalados, se encuentran en: /usr/lib/jvm
Para seleccionar la ubicación / directorio de un JDK de desarrollo completo (que es diferente del JRE de tiempo de ejecución más simple) busque entradas:
ls -ld java*openjdk*
Aquí hay dos buenas opciones, que son enlaces a versiones específicas, donde tendrá que seleccionar la versión:
/usr/lib/jvm/java-1.8.0-openjdk
/usr/lib/jvm/java-11-openjdk
Esta es la mejor manera que funcionó para mí Ejecute este comando: -
$(dirname $(readlink $(which javac)))/java_home