簡體   English   中英

無法使用 wget 在 CentOS 機器上安裝 oracle jdk

[英]Not able to install oracle jdk on CentOS machine using wget

我想在 CentOS 上安裝 oracle java jdk 8 我無法安裝 java jdk 因為當我嘗試使用命令安裝 java jdk

[root@ADARSH-PROD1 ~]# 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/8u131-b27/jdk-8u131-linux-x64.rpm"

我收到輸出:

Connecting to edelivery.oracle.com 
(edelivery.oracle.com)|23.211.196.232|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://download.oracle.com/otn-pub/java/jdk/8u131-b27/jdk-8u131-    linux-x64.rpm?AuthParam=1495864027_230ebffd10615c26528e8d2496500338 [following]
--2017-05-27 11:15:07--  http://download.oracle.com/otn-pub/java/jdk/8u131-    b27/jdk-8u131-linux-x64.rpm?    AuthParam=1495864027_230ebffd10615c26528e8d2496500338
Connecting to download.oracle.com (download.oracle.com)|184.25.109.32|:80...     connected.
HTTP request sent, awaiting response... 404 Not Found
2017-05-27 11:15:09 ERROR 404: Not Found.

Oracle 已更新鏈接生成機制。 它現在包含一些序列,這些序列對於某個版本似乎是持久的,但是以未知的機制生成。 此外,要下載除latest版本之外的任何版本,您現在需要擁有 Oracle 帳戶:

對於生產用途,Oracle 建議下載最新的 JDK 和 JRE 版本並允許自動更新。

只有開發人員和企業管理員才能下載這些版本。

下載這些版本需要一個 oracle.com 帳戶。 如果您沒有 oracle.com 帳戶,您可以使用本頁頂部的鏈接了解更多信息並免費注冊一個。

Oracle Java 檔案頁面查看更多信息。

所以你現在有兩個選擇。

選項 1.通過新的直接鏈接使用最新版本(現在是8u131 )。 在您接受許可協議后,可以在Java SE Development Kit 8 下載頁面上找到該鏈接。 你的命令將是:

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/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"

選項 2.切換到openjdk包:

yum install java-1.8.0-openjdk

OpenJDK 上查看有關 openjdk 安裝的更多信息:下載和安裝頁面。

這種事情反復出現。 根本問題是 Oracle 希望您閱讀並同意許可條款。

這是一件合法的事情。 如果您可以實施一種無需人工單擊“我同意”按鈕即可自動下載的方案,則某些法官可能會裁定協議條款不適用於您。

因此,Oracle 試圖使自動下載 Java 的“免費”版本變得困難(或至少……不簡單)。 他們時不時地改變機制。

解決這個問題的幾種方法是:

  1. 詢問 Oracle 如果您支付了許可費用,他們是否會讓您訪問穩定的下載站點(大概有密碼訪問控制)。 (我實際上不知道他們是否這樣做。)

  2. 手動下載您需要的每個 Java 版本的發行版,並將它們保存在安全的私人位置1 然后更改您的自動部署代碼以從該位置獲取發行版。

  3. 切換到 OpenJDK 的 3rd 方提供商; 例如,Linux 包源,或提供免費和無限制下載 OpenJDK 二進制發行版的提供商之一。

我知道以上所有這些都需要付出一些努力。 但是,每次出現未預知的變化時,從“ http://download.oracle.com ” 進行腳本下載也會“開玩笑”。


1 - 1) 首先咨詢您的律師。 我認為許可證允許這樣做,但 IANAL。 2)請勿故意或不小心發布它們,否則您很可能會陷入侵犯版權的訴訟中!

對我來說,無論使用什么腳本,每次直接在我的遠程 Linux 服務器上使用wget都會失敗。 它要么將文件下載為 HTML,要么根本不下載。

執行此安裝的最佳和最可靠的方法是

  1. 忘記wget並直接將文件下載到您的系統
  2. 使用 WinSCP 或任何其他免費的 SFTP 或 FTP 客戶端將文件傳輸到您的服務器
  3. 然后從文件位置運行yum localinstall <file-name.rpm>

我遇到了與 jdk-8u131 的 OP 相同的問題,在檢查了上面答案中的選項 1 命令后,我注意到它完全相同。 我剪切粘貼了選項 1 的答案,但它起作用了! 所以,然后我用我原來的電話(完全相同)再次嘗試了幾次,但它再次失敗了幾次,並顯示相同的消息,然后在第 5 或 6 次去它工作......所以我想,一旦你使用最新的 URL,它與選項 1 一起工作正常,但您可能不止一次看到 404 錯誤 - 如果是這樣,請等待然后重試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM