我尝试将jdk7(Linux x64 rpm)安装到我的Amazon EC2实例上。我用wget和curl -o这样做但是没有成功下载。相反,它下载了一个错误的html文件,其中它告诉在下载之前接受许可协议。 我使用此链接http://www.oracle.com/technetwork/java/javase/downloads/jdk7u7-downloads-1836413.html接受协议,之后我右键单击包并复制链接并尝试通过命令行下载,但它无法正常工作。 我将它下载到我的本地计算机并使用scp将其移动到EC2中的本地目录。但是当我尝试执行它时,它抛出了这些错误:
sudo rpm -i jdk-7u7-linux-x64.rpm
Unpacking JAR files...
rt.jar...
Error: Could not open input file: /usr/java/jdk1.7.0_07/jre/lib/rt.pack
jsse.jar...
Error: Could not open input file: /usr/java/jdk1.7.0_07/jre/lib/jsse.pack
charsets.jar...
Error: Could not open input file: /usr/java/jdk1.7.0_07/jre/lib/charsets.pack
tools.jar...
Error: Could not open input file: /usr/java/jdk1.7.0_07/lib/tools.pack
localedata.jar...
Error: Could not open input file: /usr/java/jdk1.7.0_07/jre/lib/ext/localedata.pack
我用谷歌搜索了一个解决方案并遇到了这个链接:http://docs.oracle.com/javase/7/docs/webnotes/install/linux/linux-jdk.html
尽管它说: “1.下载文件。在下载文件之前,您必须接受许可协议。”有没有办法通过命令行接受许可?
谢谢!
我认为这个问题不是由接受许可协议(即下载)的问题引起的,我认为这与一个有缺陷的rpm包有关。发布这个rpm -i install,java工作吗?你能导航到/usr/java/jdk1.7.0_07/jre/bin并运行java吗?
答案 0 :(得分:6)
不是你,而是Oracle网站。他们改变了他们的许可策略。
请阅读此blog post以获取更多信息,以及有关自动化的一些提示。
帖子底部有趣的小故事:
根据Java SE的OTN BCL文档:
通过选择“接受许可协议”(或等效)按钮 和/或使用软件您承认您已阅读过 条款并同意他们。
答案 1 :(得分:6)
对我而言,它的工作如下
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie;" http://download.oracle.com/otn-pub/java/jdk/8u40-b26/jdk-8u40-linux-x64.rpm
答案 2 :(得分:0)
有一个简单的方法:
wget --no-check-certificate --no-cookies --header "Cookie: gpw_e24=yippi ka yei madafaka;" http://download.oracle.com/blahblah....
您可以发送任何您想要的“gpw_e24”
的cookie值P.D:请原谅我可怜的英语,尽我所能; - )