关于如何在Linux上自动下载Java JDK,这是一个很好的答案:Downloading Java JDK on Linux via wget is shown license page instead
描述的方法不再有效 . 似乎Oracle再一次改变了对其下载服务器的限制来阻止这种方法 . 我想他们不希望Java在AWS等自动扩展服务器系统中使用 . 他们在想什么?
我正在尝试的具体命令是将最新的7u51版本下载到AWS服务器,以便我可以安装我的Web应用程序:
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2%2Fwww.oracle.com%2F" "http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-i586.rpm"
这不再符合OTN许可协议,如本封闭式回答所述:https://stackoverflow.com/a/21431491/2144836
从我的浏览器尝试这个,我看到下载链接在查询参数中添加了一个额外的身份验证:
http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-i586.rpm?AuthParam=1392853518_cb83fe47e04500eecccdb66722756fb3
将此链接与AuthParam复制并粘贴到 wget
调用中也不起作用 . 我最初的猜测是它与会话或IP地址相关联 .
尝试将其手动下载到服务器(或一天一百次一百个服务器)是不合理的,所以我希望有一个适用于当前限制的解决方法 .
那么,是否有自动下载最新JDK的解决方法?或者我应该完全放弃Oracle吗?
3 回答
你的命令对我来说很好 . 检查如下:
运行此命令时会出现什么错误?我在3个不同的地方试过你的命令,每次都有效 .
Oracle已做出改变,影响以前的方法 .
March 2014 的正确答案如下:
Downloading Java JDK on Linux via wget is shown license page instead
自动执行下载java的过程,更改执行权限并安装它 .
操作系统: - CentOS
gedit abc
//创建一个名为abc的bash文件,并从[#!/ bin / bash直到rpm -ivh jdk-8u31-linux-x64.rpm]开始复制到脚本下面到abc文件 .
#!/斌/庆典
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u31-b13/jdk-8u31-linux-x64.rpm
chmod xr jdk-8u31-linux-x64.rpm
rpm -ivh jdk-8u31-linux-x64.rpm
//保存文件并退出
授予abc文件执行权限[chmod xr abc]
运行文件./abc