Gostaria de saber qual pacote está instalado no Ubuntu 14.04 (servidor) que dá acesso ao javac
comando. A linha de distros RHEL tem yum provides
para isso, mas não parece haver nada semelhante para a família Debian.
Esta pergunta do AskUbuntu sugere o uso de dpkg -S
e apt-file
, mas nenhum deles funciona:
$ sudo dpkg -S `which javac`
dpkg-query: no path found matching pattern /usr/bin/javac
apt-file search
parece funcionar em primeiro lugar:
$ apt-file search javac
javacc: /usr/bin/javacc
Exceto que apt-cache policy
mostra que este pacote nem está instalado, então obviamente não é o pacote que fornece javac
.
$ apt-cache policy javacc
javacc:
Installed: (none)
Candidate: 5.0-5
Como posso descobrir qual pacote fornece o javac
comando?
Em alguns casos, investigações adicionais são necessárias. Em particular,
mostra que
/usr/bin/javac
é um link simbólico - então podemos usarreadlink
para detalhar:ou (já que é um
update-alternatives
link)a partir do qual podemos escolher o valor atual:
Parece que
/usr/bin/javac
é um link simbólico gerenciado porupdate-alternatives
. O que você vê se vocêreadlink -f /usr/bin/javac
? Se estiver apontando para outro lugar, talvez verifique esse local comdpkg -S
? Ouupdate-alternatives
o próprio pode dizer quais opções você tem para um determinado link, por exemplo:Então:
Todos os arquivos desse pacote: https://packages.ubuntu.com/xenial/openjdk-8-jdk-headless/filelist