![为什么在 vagrant 上安装 Java 需要这个 apt 配置?](https://linux22.com/image/879580/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%9C%A8%20vagrant%20%E4%B8%8A%E5%AE%89%E8%A3%85%20Java%20%E9%9C%80%E8%A6%81%E8%BF%99%E4%B8%AA%20apt%20%E9%85%8D%E7%BD%AE%EF%BC%9F.png)
这是我的 bootstrap.sh
apt-get update
apt-get install -y python-software-properties
add-apt-repository -y ppa:webupd8team/java
echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections
# Update apt sources
apt-get update
# Install stuff available through apt-get
apt-get install -y unzip wget oracle-java7-installer oracle-java7-set-default
我试图理解为什么这两行
add-apt-repository -y ppa:webupd8team/java
echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections
安装 Java 所必需的。
根据 Ubuntu 手册,
add-apt-repository
is a script which adds an external APT repository to
either /etc/apt/sources.list or a file in /etc/apt/sources.list.d/ or
removes an already existing repository.
但是 apt 存储库不应该自动更新吗?
apt-get update
apt-get install -y oracle-java7-installer
?
那么
echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections
做?
答案1
看来这个 bootstrap.sh 是这个 vagrant 的一部分,它要求您安装 Oracle Java7。因此,它会进行检查,如果没有回显,则采取特定操作(安装 Oracle Java7)。它使用标准 ppa 来安装 Oracle Java7。