如何使用不带PPA的Ansible安装Java 8

时间:2019-04-21 05:25:14

标签: java java-8 ansible

我通常会使用以下代码使用Ansible安装Java 8:

---
- name: Install add-apt-repostory
  become: yes
  apt: name=software-properties-common state=latest

- name: Add Oracle Java Repository
  become: yes
  apt_repository: repo='ppa:webupd8team/java'

- name: Accept Java 8 License
  become: yes
  debconf: name='oracle-java8-installer' question='shared/accepted-oracle-license-v1-1' value='true' vtype='select'

- name: Install Oracle Java 8
  become: yes
  apt: name={{item}} state=latest
  with_items:
    - oracle-java8-installer
    - ca-certificates
    - oracle-java8-set-default

参考以下是原始作者的堆积式溢出问题。

How to install Oracle Java 8 using Ansible

但是,由于Oracle JDK许可证已于2019年4月16日更改发行版。此PPA已停产,并且当尝试安装Java 8时,我的ansible代码现在返回以下错误...

  

软件包oracle-java8-installer不可用,但由引用   另一个包裹。这可能表示该包裹已丢失,已经   已过时,或者只能从其他来源获得

     

E:软件包“ oracle-java8-installer”没有安装候选对象

由于PPA已停止使用并且Oracle许可证已更改,现在有人知道如何使用Ansible自动化Java 8的安装吗?

2 个答案:

答案 0 :(得分:1)

就我而言,我注册了oracle帐户,然后直接从Oracle将.rpm / .tar.gz软件包下载到我的一台PC中。 我将文件传输到ansible控制服务器,并使用ansible剧本使用复制模块将文件分发到其他远程服务器。 最后,我编写了ansible角色,使用以下方法将其提取并安装到本地。

CentOS:您可以轻松地使用yum安装rpm软件包。

Ubuntu:请遵循以下步骤。 https://www.vultr.com/docs/how-to-manually-install-java-8-on-ubuntu-16-04

这不是一个好方法,因为您需要将安装程序转移到每个服务器。 我也仍然在寻找一种使用脚本直接从oracle网站下载的方法,但是没有登录验证就没有办法。

答案 1 :(得分:-3)

您必须下载并安装JDK(Java开发工具包)。有一个名为readme或类似文本格式的文件。然后复制文本并粘贴。您可以在互联网上轻松找到此类信息。