404错误并安装Ansible Java JDK

时间:2019-01-24 02:33:01

标签: java java-8 ansible install yaml

我正在尝试使用ansible安装Java,并且我发现有人在here之前在Reddit上遇到相同的问题。这是ansible的yaml文件

    - name: download java
      get_url:
        url: "http://download.oracle.com/otn-pub/java/jdk/10.0.2+13/19aef61b38124481863b1413dce1855f/jre-10.0.2_linux-x64_bin.rpm"
        dest: ~/
        headers: 
          Cookie: oraclelicense=accept-securebackup-cookie

我正在尝试运行此链接(使用其他链接),但我不断收到HTTP Error 404: Not Found 。即使我也使用相同的链接,结果也是一样。

任何帮助将不胜感激。谢谢

编辑,我正在使用wget在终端中直接尝试。我跑了 wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz 输出是

$ wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz
--2019-01-23 18:38:29--  http://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz
Resolving download.oracle.com (download.oracle.com)... 184.29.106.250
Connecting to download.oracle.com (download.oracle.com)|184.29.106.250|:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://edelivery.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz [following]
--2019-01-23 18:38:29--  https://edelivery.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz
Resolving edelivery.oracle.com (edelivery.oracle.com)... 23.56.112.136
Connecting to edelivery.oracle.com (edelivery.oracle.com)|23.56.112.136|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz?AuthParam=1548297629_d1111e625149847f66878eb0ddd67c86 [following]
--2019-01-23 18:38:29--  http://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz?AuthParam=1548297629_d1111e625149847f66878eb0ddd67c86
Connecting to download.oracle.com (download.oracle.com)|184.29.106.250|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz?AuthParam=1548297629_d1111e625149847f66878eb0ddd67c86 [following]
--2019-01-23 18:38:29--  https://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz?AuthParam=1548297629_d1111e625149847f66878eb0ddd67c86
Connecting to download.oracle.com (download.oracle.com)|184.29.106.250|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2019-01-23 18:38:30 ERROR 404: Not Found.

2 个答案:

答案 0 :(得分:1)

从Oracle的主要下载站点以脚本方式下载Java JDK和JRE一直存在一些问题。问题是双重的:

  1. 版本一旦终止,其版本将从主下载站点中消失。 (并且使用Oracle的新发布节奏,对于非LTS版本,例如Java 10,这种情况很快发生。)

  2. Oracle希望您执行“点击达成协议”的事情,他们偶尔会更改其实现方式。这往往会破坏人们用于自动化部署的脚本(Ansible等)。

可能的解决方案:

  1. 手动将Oracle Java版本的副本下载到您自己的基础结构中,并更改部署脚本以从那里而不是Oracle站点进行部署。

  2. 使用OpenJDK ...,它为您提供了更多获取可部署内容的选项。

  3. 切换到Java11。Java10已经(已经)停产。

  4. 如果新发行日程有麻烦,请限制您使用LTS版本。即Java 8,Java 11,Java 14,...

答案 1 :(得分:0)

根据我的经验,除非我拥有服务器并对其进行时髦处理,否则404代码通常通常是因为该URL不存在。通常,在wget的情况下,我输错了一些内容。

据我所知,这种情况没有什么不同。将您的链接复制到我的浏览器中会直接显示以下页面: 404 error from oracle.com

正确的链接是什么?不幸的是我无法告诉你。

从我的角度来看,您有2种选择:

1)验证链接是否正确以及您是否正确键入了链接,或者 2)在浏览器中转到Oracle的站点,然后尝试下载您想要/需要的Java版本。

希望这会有所帮助!