我一直在尝试从下载“jdk-8u211-linux-x64.tar.gz”https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html?使用以下命令。文件已下载,但不是正确的文件。当我这样做时,file jdk-8u221-linux-i586.tar.gz
它显示为 html 文件。
命令:wget --user=*** --password=******* --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" "https://download.oracle.com/otn/java/jdk/8u221-b11/230deb18db3e4014bb8e3e8324f81b43/jdk-8u221-linux-x64.tar.gz"
当我尝试使用它解压缩时tar -xvzf jdk-8u221-linux-i586.tar.gz
出现以下错误:
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
答案1
继 2019 年 4 月 16 日 Oracle Java 许可证发生变化后,Oracle 现在禁止任何人在其批准的流程之外下载 Java。
该过程当前是登录到 Oracle 帐户,接受新的许可证,然后尝试使用身份验证 cookie 进行下载。
WebUpd8 不得不关闭他们的 Oracle Java PPA正是因为这个原因。
如果您拥有正确的 Cookie,那么从技术上讲,您可以在wget
标头中设置它们,但您必须在 Web 浏览器中浏览下载,然后复制浏览器发出的请求。此时,您也可以使用浏览器下载 Java。
目前尚无已知的解决方法。
答案2
下载 jdk 8u221
$ wget -c --content-disposition "https://javadl.oracle.com/webapps/download/AutoDL?BundleId=239835_230deb18db3e4014bb8e3e8324f81b43"
$ old=$(ls -hat | grep jre | head -n1)
$ mv $old $(echo $old | awk -F"?" '{print $1}')