openjdk-9-jdk:amd64
我已经在 Ubuntu 上安装,当我运行时which javac
,它显示了一个指向该/etc
目录的软链接:
$ ls -l /usr/bin/javac
lrwxrwxrwx 1 root root 23 kwi 13 08:09 /usr/bin/javac -> /etc/alternatives/javac
据我所知,只有配置数据应该存储在/etc
.为什么javac
存储在那里?我应该移动这个可执行文件吗?
答案1
如果你看一下,/etc/alternatives
你会发现它不包含可执行文件,但包含更多符号链接;例如
$ ls -l /etc/alternatives/javac
lrwxrwxrwx 1 root root 43 Sep 20 2016 /etc/alternatives/javac -> /usr/lib/jvm/java-8-openjdk-amd64/bin/javac
这就是替代方案的实现方式:路径中的“二进制文件”是 中替代方案的符号链接/etc/alternative
,而替代方案本身就是所选目标二进制文件的符号链接。本次评选是配置数据,所以/etc
是完全合适的。 (替代方案不仅可以用于二进制文件,因此您也可以在其中找到联机帮助页等。)