一、文章由来

1、前天有人再去你咨询如何下载jdk的老版本,在oracle官网上找了老半天,找不到相应的选项~

2、等待问题解决了之后,又抛出来一个新的问题,如何wget直接下载,毕竟百十来兆的文件,下载下来再上传对于我们这种蜗牛带宽来说也是一件苦逼的事情~


二、如何下载jdk的历史版本

1、访问http://www.oracle.com


2、点击Downloads---->Java for Developers

e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/da6a5824-b5ee-4d87-b6c5-0bd999352e83.pngwKiom1On3B_SXBSKAAKJnj0g28g187.jpg

3、在弹出的的页面中,下拉页面到最下面,点击历史归档

e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/d32329f2-c53b-4009-94e4-fc3f6ad728cf.pngwKioL1On3AGx69MrAAI6BuPiCL4686.jpg

4、点击进去,同意协议,然后选择相应的版本下载即可

e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/57ebadf3-6be7-439b-826a-f88a576877b7.png

wKiom1On3FrRuKdMAAQwNWkBJ_o792.jpg

wKioL1On3DDDW6lYAAMWsACZmZ8350.jpg

wKiom1On3GKyDfvbAAPfT32ZVOI863.jpg

e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/1105080b-2a6f-416f-b160-3ded415c5eee.png
e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/40b66814-f2af-43c1-a225-75a60ce3cad3.png

三、如何在命令行下下载jdk

1、当时想到的第一个方法

  • 选择相应的版本点击下载,然后在弹窗的对话框中复制网址,在跑的命令行下进行wget操作,嘿,果然可以~ 但是下载下来之后需要重命名,否则无法正常使用~

wKiom1On3KaQ0oHOAAF1gVqeTG8704.jpge8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/58a40120-dc28-4d8c-9bf4-c830aff9b7de.png

2、话说得意必然忘形,果真没错,过了大概十分钟左右,到另外一台机器上进行wget的时候,认证报错(这是因为在网页上进行下载的时候有一个同意协议,这里的话没有,所以403拒绝,)

e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/da43bc88-7234-484e-8436-a89ae147cca8.pngwKioL1On3IeiF3YfAAJOh5kDc2A128.jpg

3、这可如何是好,我想写脚本一次性解决问题,不想这么麻烦

F12调用网页查看,这个是经过了两次重定向
e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/128921a2-4e1d-4d04-89ba-626344b780a1.pngwKioL1On3MPz24CZAAJ3tIPVSi4761.jpg

看到网上介绍的信息,真的是吓一跳额,oracle这是要做啥子。。。
e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/5d4a5d7c-ac64-4ae5-b5cd-abeb0c38f331.pngwKiom1On3Tjj5USuAAV3bk517Ss339.jpg

4、网上找了很多例子,只有下面这个可以正常使用

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; 
oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/7u55-b13/jdk-7u55-linux-x64.tar.gz"

e8b4a556-12bc-440a-baff-4403c4ddb5d0_4_files/bddaa5bb-a0b5-40ab-b521-0f04f7e36739.png

wKioL1On3XDSKWy5AAsYMQQOkTI166.jpg

四、后记

1、wget本身不支持管道问题是一个坑

2、oracle的本身认证机制也是一个坑,认证完毕需要几次绕弯


参考文章:
http://www.kankanews.com/ICkengine/archives/133122.shtml