当我试图从Oracle下载Java时,我最终下载了一个页面,告诉我需要同意OTN许可条款。

对不起! 为了从Oracle技术网络下载产品,您必须同意OTN许可条款。 请务必…… 你的浏览器已经启用了“cookies”和JavaScript。 您点击了希望下载的产品的“接受许可”。 在接受许可后的30分钟内尝试下载。

如何下载及安装Java?


当前回答

如上文所述: https://stackoverflow.com/a/41718895/4370196

更新JDK 8 Update 121

由于Oracle在其下载链接中插入了一些md5hash,因此不能自动组装命令行下载链接。

所以我修改了一些讨厌的bash命令行来获得最新的jdk下载链接,下载并通过rpm直接安装。 对于所有感兴趣的人:

wget -q http://www.oracle.com/technetwork/java/javase/downloads/index.html -O ./index.html && grep -Eoi ']+>' index.html | grep -Eoi '/technetwork/java/javase/downloads/jdk8-downloads-[0-9]+.html' | (head -n 1) | awk '{print "http://www.oracle.com"$1}' | xargs wget --no-cookies --header "Cookie: gpw_e24=xxx; oraclelicense=accept-securebackup-cookie;" -O index.html -q && grep -Eoi '"filepath":"[^"]+jdk-8u[0-9]+-linux-x64.rpm"' index.html | grep -Eoi 'http:[^"]+' | xargs wget --no-cookies --header "Cookie: gpw_e24=xxx; oraclelicense=accept-securebackup-cookie;" -q -O ./jdk8.rpm && sudo rpm -i ./jdk8.rpm

粗体部分应该换成你喜欢的包装

其他回答

我已经为我的gentoo盒子制作了一个jdk-download脚本(特定于tar.gz)。不需要像其他类似的脚本那样更新,尝试“强制”下载您想要的任何版本的最新版本。

使用

jdk-download< <version> <platform> [<build>]

* <version> - Something like "8u40"
* <platform> - Usually i586 or x64
* <build> - The internal build number used by oracle, to avoid guessing and trying to download starting from 99 to 1 (build 0, really?!!)

博客

bitbucket源码

这个问题将从Oracle JDK 17开始解决

https://www.oracle.com/java/technologies/jdk-script-friendly-urls/

Oracle JDK 17的最新版本可以从命令行下载,也可以通过使用下载url自动在脚本和dockerfile中下载,该下载url将提供当时的更新版本。

你可以使用-

wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz

格式以获取最新的17个版本

oracle-java-download是GitHub上的一个项目,允许您为JDK 8和JDK 9创建下载链接,您可以使用这些链接进行进一步处理,例如在自动构建或部署过程中。

它需要Linux、Docker和JDK >= 8才能运行。

我知道Oracle竭尽所能让他们的Java运行时和Java SDK变得尽可能的难。

下面是一些命令行爱好者的指南。

对于Debian类系统(在Debian squeeze和Ubuntu 12.x+上测试)

su -
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886
apt-get update
apt-get install --yes oracle-java7-installer
exit

注:如果你知道一个更好或更简单的方法添加评论,我会更新指南。

如上文所述: https://stackoverflow.com/a/41718895/4370196

更新JDK 8 Update 121

由于Oracle在其下载链接中插入了一些md5hash,因此不能自动组装命令行下载链接。

所以我修改了一些讨厌的bash命令行来获得最新的jdk下载链接,下载并通过rpm直接安装。 对于所有感兴趣的人:

wget -q http://www.oracle.com/technetwork/java/javase/downloads/index.html -O ./index.html && grep -Eoi ']+>' index.html | grep -Eoi '/technetwork/java/javase/downloads/jdk8-downloads-[0-9]+.html' | (head -n 1) | awk '{print "http://www.oracle.com"$1}' | xargs wget --no-cookies --header "Cookie: gpw_e24=xxx; oraclelicense=accept-securebackup-cookie;" -O index.html -q && grep -Eoi '"filepath":"[^"]+jdk-8u[0-9]+-linux-x64.rpm"' index.html | grep -Eoi 'http:[^"]+' | xargs wget --no-cookies --header "Cookie: gpw_e24=xxx; oraclelicense=accept-securebackup-cookie;" -q -O ./jdk8.rpm && sudo rpm -i ./jdk8.rpm

粗体部分应该换成你喜欢的包装