首页 文章

从Oracle Archive页面下载Oracle Java 7 SDK的wget / curl

提问于
浏览
8

StackOverflow和其他社区(AskUbuntu,Unix和Linux等)上有很多帖子提供了有关如何使用 wgetcUrl 从Oracle网站自动下载Java发行版的建议 . 它们都涉及发送一个cookie,假设在真正的下载链接出现之前,人们通常必须手动接受许可协议 .

但是,在尝试下载最近已移至Oracle Archive page的Java 7 SDK时,这些都不适合我 .

如果我转到此页面,请手动接受许可协议,然后复制下载链接,如下所示:

http://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz

Note that it has otn in the middle while all the other posts are about URLs which are stored underotn-pub.

使用适用于 otn-pub 链接的常用方法如下所示:

wget --no-cookies --no-check-certificate --header "Cookie: oraclelicense=a" http://download.oracle.com/otn-pub/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz

但是,这不适用于 otn 类型的URL . 相反, wget 返回:

--2017-05-23 12:11:12--  http://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz
Resolving download.oracle.com (download.oracle.com)... 92.122.214.233, 92.122.214.217
Connecting to download.oracle.com (download.oracle.com)|92.122.214.233|:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://edelivery.oracle.com/akam/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz [following]
--2017-05-23 12:11:12--  https://edelivery.oracle.com/akam/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz
Resolving edelivery.oracle.com (edelivery.oracle.com)... 23.0.39.115, 2a02:26f0:8f:29a::2d3e
Connecting to edelivery.oracle.com (edelivery.oracle.com)|23.0.39.115|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://login.oracle.com/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.2~CA55CD32~5B4FBD9FD4FC906722CB92CC3F7FA417B904138FD53F875C3FEFDF932EC5928D866C8B39EACAA55F28099E034BAC612F869C90A39B20E322E380F4A006B9668EAD35323A1C548EAD5D03EE8D6C772A88C049F024986DC6CCF546B00D347731F76BE786B96F0041610DEE7B6B4EAC27DCBE558B151B032973F065FC0367918B72DBCAB4B7FC920BAC4C13E820DFFE1761C5C473B6E0A4F0E94FABACDB40F02AD6B2BAB1D3F57371B14048557A0291AC3F12C73A30CAF4AAEB8A545475300A1ABBD60E2BF27FB1B11BC47DE91D0E918E04E4C4663632E98752BBC07671BBD21E7C6F73D78A8A66254579EC63B99716D999 [following]
--2017-05-23 12:11:12--  https://login.oracle.com/pls/orasso/orasso.wwsso_app_admin.ls_login?Site2pstoreToken=v1.2~CA55CD32~5B4FBD9FD4FC906722CB92CC3F7FA417B904138FD53F875C3FEFDF932EC5928D866C8B39EACAA55F28099E034BAC612F869C90A39B20E322E380F4A006B9668EAD35323A1C548EAD5D03EE8D6C772A88C049F024986DC6CCF546B00D347731F76BE786B96F0041610DEE7B6B4EAC27DCBE558B151B032973F065FC0367918B72DBCAB4B7FC920BAC4C13E820DFFE1761C5C473B6E0A4F0E94FABACDB40F02AD6B2BAB1D3F57371B14048557A0291AC3F12C73A30CAF4AAEB8A545475300A1ABBD60E2BF27FB1B11BC47DE91D0E918E04E4C4663632E98752BBC07671BBD21E7C6F73D78A8A66254579EC63B99716D999
Resolving login.oracle.com (login.oracle.com)... 209.17.4.8
Connecting to login.oracle.com (login.oracle.com)|209.17.4.8|:443... connected.
HTTP request sent, awaiting response... 401 Authorization Required

Username/Password Authentication Failed.

看起来他们要么改变了有关身份验证的内容,要么之前从未使用 Oracle Archive 页面的链接(之前从未尝试过) .

知道如何使用 wgetcUrl 或类似方法下载最新的Oracle Java 7 SDK .tar.gz存档吗?

4 回答

  • 4

    如果您尝试从存档中下载JDK 7,oracle站点会要求您登录 . 因此卷曲和wget的问题 . 这是最近的改变希望他们可以改变这一点 .

  • 2

    直到最近,wget一直使用otn-pub链接 . 似乎Oracle已经改变了一些东西 .

    最接近的解决方法是从托管它的另一个站点进行wget

    wget http://ftp.osuosl.org/pub/funtoo/distfiles/oracle-java/jdk-7u80-linux-x64.tar.gz
    
  • 6

    这个curl命令对我有用:

    curl -v -O -L -b oraclelicense=accept-securebackup-cookie http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-i586.rpm
    

    选项:

    • -v - 只显示STDERR上的其他信息和HTTP标头(您可以跳过此选项)或使用 -s 进行静默运行

    • -O - 保存对磁盘的响应(而不是将其发送到STDOUT)或使用 -o filename指定另一个路径

    • -L - 按照重定向

    • -b - 启用cookie引擎并传入初始cookie oraclelicense = accept-securebackup-cookie

    该URL直接从Oracle JDK下载页面中提取

  • 0

    Oracle不允许在未登录门户网站的情况下从归档链接下载,也不建议使用归档链接中的jdk .

    查看此链接以获取更多信息:http://www.oracle.com/technetwork/java/javase/archive-139210.html

相关问题