我想查找在 Ubuntu 14.04(服务器)上安装了哪些软件包可以访问该javac
命令。发行版的 RHEL 系列具有yum provides
此功能,但 Debian 家族似乎没有任何类似的东西。
这个AskUbuntu 问题建议使用dpkg -S
and apt-file
,但这些都不起作用:
$ sudo dpkg -S `which javac`
dpkg-query: no path found matching pattern /usr/bin/javac
apt-file search
起初似乎有效:
$ apt-file search javac
javacc: /usr/bin/javacc
除了apt-cache policy
表明这个包甚至没有安装,所以它显然不是提供javac
.
$ apt-cache policy javacc
javacc:
Installed: (none)
Candidate: 5.0-5
如何找出提供该javac
命令的软件包?
在某些情况下,需要额外的侦查。尤其是,
表明这
/usr/bin/javac
是一个符号链接 - 所以我们可以使用readlink
以下钻取:或(将其视为
update-alternatives
链接)我们可以从中挑选出当前值:
看起来像是
/usr/bin/javac
一个由update-alternatives
. 如果你看到了什么readlink -f /usr/bin/javac
?如果它指向其他地方,也许用dpkg -S
? 或者update-alternatives
它本身可以告诉您特定链接有哪些选项,例如:那么:
该包中的所有文件:https ://packages.ubuntu.com/xenial/openjdk-8-jdk-headless/filelist