提问者:小点点

自动同意sudo apt-get-y install oracle-java7-install er上的许可协议[关闭]


此问题似乎与程序员主要使用的特定编程问题、软件算法或软件工具无关。如果您认为该问题在另一个Stack Exchange站点上是主题,您可以留下评论来解释该问题可以在哪里得到回答。

原关闭原因未解决

用于Ubuntu的OracleJava包以交互方式询问许可协议。所以我每次都必须说“好”,然后说“是”,但我想自动化它。我做的是:

sudo add-apt-repository -y ppa:webupd8team/java
sudo apt-get update
sudo apt-get -y install oracle-java7-installer 

有没有一种简单的方法可以在不使用期望的情况下自动化协议流程?


共3个答案

匿名用户

试试这个:

sudo add-apt-repository -y ppa:webupd8team/java
sudo apt-get update
echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
sudo apt-get -y install oracle-java7-installer 

在我的debian 7.1上运行第3和第4个命令会有所帮助,所以我认为同样可以在ubuntu上提供帮助

匿名用户

如果您使用Anable进行自动化,您可能需要将其放入您的剧本中:

tasks:

  - name: add java PPA
    apt_repository:
      repo: "ppa:webupd8team/java"

  - name: accept oracle license
    debconf:
      name: "oracle-java7-installer"
      question: "shared/accepted-oracle-license-v1-1"
      value: "true"
      vtype: "select"

  - name: install jdk
    apt:
      name: "oracle-java7-installer"

注意:根据Roy Wood的评论,debconf中的value参数必须设置为"true",包括引号。

匿名用户

ppa: linux起义/java

对于任何使用Linux起义Java11安装程序偶然发现这一点的人,请参阅以下内容:

  1. https://launchpad.net/~linuxuprising/存档/ubuntu/java
  2. https://www.linuxuprising.com/2018/10/how-to-install-oracle-java-11-in-ubuntu.html

而不是答案中的命令(如其网站上所列),您需要以下内容:

echo oracle-java11-installer shared/accepted-oracle-license-v1-2 select true | \
sudo /usr/bin/debconf-set-selections

这是我为基于Ubuntu 18.04的容器设置的Docker:

RUN apt-get update && apt-install -y software-properties-common && \
    add-apt-repository -y ppa:linuxuprising/java && \
    apt-get update && \
    echo oracle-java11-installer shared/accepted-oracle-license-v1-2 select true | sudo /usr/bin/debconf-set-selections && \
    apt-get install -y oracle-java11-installer && \
    apt install oracle-java11-set-default