MacOS responde con múltiples versiones de Java instaladas y sin necesidad de desinstalar
Muéstrame qué versiones de Java he instalado:
$ ls -l /Library/Java/JavaVirtualMachines/
Para configurarlo en mi versión jdk1.8:
$ ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac /usr/local/bin/javac
Para configurarlo en mi versión jdk11:
$ ln -s /Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac /usr/local/bin/javac
-------------------------------------------------- -----------------------
Tenga en cuenta que, a pesar de lo que dice el mensaje, parece que significa que quiere la versión 1.8 y muestra este mensaje si tiene una versión posterior .
Lo que sigue son mis intentos anteriores que me llevaron a la respuesta anterior, que luego funcionó ... Es posible que deba hacer algo diferente según lo que esté instalado, por lo que tal vez estas notas puedan ayudar:
Configurarlo en mi versión jdk1.8
$ export PATH=/Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac:$PATH
Configurarlo en mi versión jdk11
$ export PATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac:$PATH
... pero en realidad eso no funciona porque /usr/bin/javacsigue siendo lo que se ejecuta primero:
$ which javac
/usr/bin/javac
... para ver qué pasa primero en el camino:
$ cat /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
Eso significa que puedo anular /usr/bin/javac... ver los comandos en la parte superior de la respuesta ...
El comando para configurarlo en jdk1.8 usando ln, en la parte superior de esta respuesta, es lo que funcionó para mí.