Java
安裝在 /etc 中的 javac
我已經安裝
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
儲存在那裡,我應該移動這個執行檔嗎?
如果您看一下,
/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
非常合適。(替代方案不僅可以用於二進製文件,因此您也可以在其中找到聯機幫助頁等。)