लिनक्स के माध्यम से लिनक्स पर जावा JDK को डाउनलोड करने के बजाय लाइसेंस पृष्ठ दिखाया गया है


615

जब मैं ओरेकल से जावा डाउनलोड करने का प्रयास करता हूं तो मैं एक पेज डाउनलोड करने के बजाय यह कहता हूं कि मुझे ओटीएन लाइसेंस शर्तों से सहमत होने की आवश्यकता है।

माफ़ करना!

ओरेकल टेक्नोलॉजी नेटवर्क से उत्पादों को डाउनलोड करने के लिए आपको ओटीएन लाइसेंस शर्तों से सहमत होना चाहिए।

आश्वस्त रहे कि...

  • आपके ब्राउज़र में "कुकीज़" और जावास्क्रिप्ट सक्षम है।
  • जिस उत्पाद को आप डाउनलोड करना चाहते हैं, उसके लिए आपने "लाइसेंस स्वीकार करें" पर क्लिक किया।
  • आप लाइसेंस स्वीकार करने के 30 मिनट के भीतर डाउनलोड करने का प्रयास करते हैं।

मैं जावा को कैसे डाउनलोड और स्थापित कर सकता हूं?


यह सवाल ऑन-टॉपिक है क्योंकि यह इस बात से संबंधित है कि डेवलपर डेवलपमेंट किट कैसे इंस्टॉल करते हैं। उस कारण से इसे फिर से खोलना।
जॉर्ज स्टॉकर

जवाबों:


1657

Oracle JDK 11 के लिए अद्यतन

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/11+28/55eed80b163941c8885ad9298e6d786a/jdk-11_linux-x64_bin.tar.gz

JDK 10.0.2 के लिए अद्यतन

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/10.0.2+13/19aef61b38124481863b1413dce1855f/jdk-10.0.2_linux-x64_bin.tar.gz

JDK 10.0.1 के लिए अद्यतन

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/10.0.1+10/fb4372174a714e6b8c52526dc134031e/jdk-10.0.1_linux-x64_bin.tar.gz

JDK 9 के लिए अद्यतन ऐसा लगता है कि आप इसे बिना किसी शीर्ष लेख को भेजे सीधे java.net से डाउनलोड कर सकते हैं

wget http://download.java.net/java/GA/jdk9/9/binaries/jdk-9+181_linux-x64_bin.tar.gz

JDK 8u191 के लिए अद्यतन

TAR GZ:

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3a%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk8-downloads-2133151.html; oraclelicense=accept-securebackup-cookie;" "https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz"

आरपीएम:

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3a%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk8-downloads-2133151.html; oraclelicense=accept-securebackup-cookie;" "https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.rpm"

JDK 8u131 के लिए अद्यतन

आरपीएम:

  wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm

TAR GZ:

 wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz

RPM कर्ल का उपयोग कर:

 curl -v -j -k -L -H "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm > jdk-8u112-linux-x64.rpm

उपरोक्त सभी मामलों में, 32-बिट बिल्ड को डाउनलोड करने के लिए 'x64' के लिए 'i586' पर क्लिक करें।

  • -j -> जंक कुकीज़
  • -k -> प्रमाणपत्रों को अनदेखा करें
  • -L -> रीडायरेक्ट का पालन करें
  • -H [arg] -> हेडर

curlके स्थान पर इस्तेमाल किया जा सकता है wget

JDK 7u79 के लिए अद्यतन

TAR GZ:

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

RPM कर्ल का उपयोग कर:

curl -v -j -k -L -H "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.rpm > jdk-7u79-linux-x64.rpm

एक बार फिर, सुनिश्चित करें कि आप जिस संस्करण को डाउनलोड कर रहे हैं, उसके लिए सही URL निर्दिष्ट करें। आप यहाँ URL पा सकते हैं: Oracle JDK डाउनलोड साइट

9 जून 2012 से मूल उत्तर

यदि आप कमांड लाइन का उपयोग करके Oracle JDK को डाउनलोड करना चाहते हैं wget, तो वर्कअराउंड है। wgetनिम्नानुसार कमांड चलाएँ :

wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com" "http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-linux-x64.tar.gz"

आपके द्वारा डाउनलोड किए जा रहे संस्करण के लिए डाउनलोड लिंक को सही एक के साथ बदलना सुनिश्चित करें।


6
(हो सकता है कि यह zillionth repost आखिरकार चाल चलेगा।) एक साधारण --header "Cookie: oraclelicense=accept-securebackup-cookie"(या --header "Cookie: oraclelicense=[any-character(s)-but-a-single-space]") ठीक काम करने लगता है। क्या आप इसकी पुष्टि कर सकते हैं?
Det

2
ताजा जावा 8 के लिए अपडेट करें wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8-b132/jdk-8-linux-x64.tar.gz:। Theno- कुकीज़ निरर्थक हैं और - 1. चेक-सर्टिफिकेट केवल Wget 1.12 और पुराने के साथ आवश्यक है , जो SAN सपोर्ट (मुख्य रूप से RHEL / CentOS 6.x) गायब हैं। CURL संस्करण है:curl -L -C - -b "oraclelicense=accept-securebackup-cookie" -O http://download.oracle.com/otn-pub/java/jdk/8-b132/jdk-8-linux-x64.tar.gz
Det

3
मैंने url download.oracle.com/otn-pub/java/jdk/8u121-b13/… के साथ नए 121 वर्सन की कोशिश की, लेकिन यह काम नहीं करता है। कोई सोच?
नाम गुयेन

3
ERROR 404 मिला: JDK 11 के साथ नहीं मिला, गलत URL हो सकता है?
तिएन डुंग ट्रान

2
ओरेकल JDK 11 समाधान के लिए अपडेट किया अब और काम नहीं करता है
bomba

247

( ईरानी ने मेरे जवाब को अपडेट किया, लेकिन यहां यह सब स्पष्ट करने के लिए है। )

संपादित करें: 16 अक्टूबर, 2018 को जारी जावा 11.0.1 के लिए अपडेट किया गया

wget

wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/11.0.1+13/90cf5d8f270a4347a95050320eef3fb7/jdk-11.0.1_linux-x64_bin.tar.gz

JRE 8u191 (कोई कुकी झंडे नहीं): http://javadl.oracle.com/webapps/download/AutoDL?BundleId=235717_2787e4a52324426959898db4e85c51e0c
oracle.com और java.com में और अधिक के लिए डाउनलोड देखें ।

  • -c / --continue

    एक अधूरे डाउनलोड को जारी रखने की अनुमति देता है।

  • --header "Cookie: oraclelicense=accept-securebackup-cookie"

    15 मार्च 2014 के बाद से यह कुकी उपयोगकर्ता को लाइसेंस समझौते को स्वीकार करने के बाद प्रदान की जाती है और डाउनलोड के लिए Java संकुल को डाउनलोड करने के लिए आवश्यक है । 27 मार्च 2012 में पिछले (और पहले) कार्यान्वयन ने कुकी का उपयोग किया gpw_e24=http%3A%2F%2Fwww.oracle.com[...]। दोनों मामले जनता के लिए अघोषित हैं।

    मान होना आवश्यक नहीं है " accept-securebackup-cookie"।

Wget के लिए आवश्यक <1.13

  • --no-check-certificate

    केवल आवश्यक 1.12 और पूर्व के wget के साथ , जो विषय वैकल्पिक नाम (SAN) प्रमाण पत्र (मुख्य रूप से Red Hat Enterprise Linux 6.x और जैसे CentOS) का समर्थन नहीं करते हैं । 1.13 अगस्त 2011 में रिलीज़ हुई थी ।

    वर्तमान संस्करण देखने के लिए, उपयोग करें: wget --version | head -1

की जरूरत नहीं है

  • --no-cookies

    संयोजन --no-cookies --header "Cookie: name=value"को " आधिकारिक " कुकी समर्थन के रूप में उल्लेख किया गया है , लेकिन यहां कड़ाई से आवश्यक नहीं है।

cURL

curl -L -C - -b "oraclelicense=accept-securebackup-cookie" -O http://download.oracle.com/otn-pub/java/jdk/11.0.1+13/90cf5d8f270a4347a95050320eef3fb7/jdk-11.0.1_linux-x64_bin.tar.gz
  • -L / --location

    CURL को सभी दर्पणों के माध्यम से पुनर्निर्देशित करने की आवश्यकता है ।

  • -C / --continue-at -

    ऊपर देखो। cURL को -अंत में डैश ( ) की आवश्यकता होती है ।

  • -b / --cookie "oraclelicense=accept-securebackup-cookie"

    के रूप में भी -H / --header "Cookie: ...", लेकिन फ़ाइलों को भी स्वीकार करता है।

  • -O

    फाइलों को बचाने के लिए CURL के लिए आवश्यक ( अधिक अंतर के लिए लेखक की तुलना देखें )।


2
"पूर्ववर्ती पानी का छींटा" "विकल्प के किसी भी रूप का पालन करना" होना चाहिए, लेकिन यह एक उत्कृष्ट सारांश है।
एलेक्स ड्यूप्यू

1
खैर, मैंने इसे " cURL को -अंत में डैश ( ) की आवश्यकता होती है " में बदल दिया। इसे पर्याप्त रूप से स्पष्ट किया जाना चाहिए कि इसे कैसे लिया flagजाता है जो पहले से ही कमांड में दिखाया गया है।
डेट करें

1
मैंने url download.oracle.com/otn-pub/java/jdk/8u121-b13/… के साथ नए 121 संस्करण की कोशिश की, लेकिन यह काम नहीं करता है। कोई सोच?
नाम गुयेन

1
ऐसा लगता है कि पुराने संस्करण के लिए काम नहीं करता है। मैं 8u121 डाउनलोड नहीं कर सकता। शायद इसी वजह से Downloading these releases requires an oracle.com account। कोई वर्कअराउंड?
ALex_hha

1
हम docker का उपयोग करते हैं, इसलिए हमें java के विशिष्ट संस्करण का उपयोग करने की आवश्यकता है। हां, मैं कुछ एफ़टीपी पर फ़ाइल पा सकता हूं, लेकिन मैंने अभी उल्लेख किया है कि अब से आप साइट से पिछले संस्करण को उनके खाते के बिना डाउनलोड नहीं कर सकते हैं
ALex_hha

35

कमांड लाइन से जावा को डाउनलोड करना हमेशा परेशानी भरा रहा है। मेरे लैपटॉप पर डाउनलोड शुरू करने के लिए, फायरफॉक्स (अन्य ब्राउज़र काम कर सकते हैं) का उपयोग करने के लिए जो मैं कर रहा हूं, वह सावधानीपूर्वक करना है, इसे डाउनलोड करें (डाउनलोड विंडोज़ के भीतर), संदर्भ मेनू के "कॉपी डाउनलोड लिंक" मेनू आइटम का उपयोग करें। डाउनलोडिंग फ़ाइल। इस URL का उपयोग उसी फ़ाइल को डाउनलोड करने के लिए लिनक्स बॉक्स पर किया जा सकता है। मुझे उम्मीद है कि URL के जीने का समय कम होगा। बदसूरत, लेकिन आम तौर पर सफल।


हां .. वह काम करता है। अच्छा लगा। मेरे पास मेरा url था जैसे download.oracle.com/otn-pub/java/jdk/7u9-b05/…
मुकुट

3
यह एक दिलचस्प मामला है लेकिन इस सवाल का जवाब नहीं है। फ़ायरफ़ॉक्स पर क्लिक करना "स्वचालित डाउनलोड" के साथ असंगत है।
स्टीफन गौरिचोन

मेरे ब्राउज़र (बहुवचन) में आज की तरह परेशानी (अनुवाद: असंभव) नहीं है। लगभग 10 से 20% रास्ते में, ओरेकल का सर्वर डिस्कनेक्ट हो जाएगा, मुझे एक छंटनी डाउनलोड के साथ छोड़ देगा। CLI टूल कम से कम उस स्थान से पीछे हट जाता है जहां से इसे छोड़ा गया था, और अंततः एक रन टाइम-आउट / अस्वीकृति के बिना पूरा होगा।
रोबोप्रोग

अति उत्कृष्ट! AuthParamयदि उपयोगकर्ता ने लाइसेंस के लिए सहमति दी है या नहीं , तो क्वेरी परम को ओरेकल जाँच से कुछ लेना देना है।
asgs

केवल आज मेरे लिए काम कर समाधान। कुकी पैरामीटर को स्वीकार करने के साथ ऊपर दिए गए सभी दांव-पेच काम नहीं करते।
साद बेनबोज़िद

23

JDK 8u171 RPM के लिए अपडेट किया गया

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.rpm

नीचे दिए गए लिंक

JDK 8u161 RPM के लिए अपडेट किया गया

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm

JDK 8u152 RPM के लिए अपडेट किया गया

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u152-b16/aa0333dd3019491ca4f6ddbe78cdb6d0/jdk-8u152-linux-x64.rpm

JDK 8u144 RPM के लिए अपडेट किया गया

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.rpm

JDK 8u131 RPM के लिए अपडेट किया गया

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm

JDK 8u121 RPM के लिए अपडेट किया गया

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.rpm


2
इस परम ने मेरी मदद की।
Tar.gz का

19

मुझे पता है कि ओरेकल ने अपने जावा रनटाइम और जावा एसडीके को यथासंभव कठिन बनाने के लिए हर संभव प्रयास किया।

कमांड लाइन प्रेमियों के लिए यहां कुछ गाइड हैं।

सिस्टम की तरह डेबियन के लिए ( Debianनिचोड़ और Ubuntu12.x + पर परीक्षण किया गया )

su -
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886
apt-get update
apt-get install --yes oracle-java7-installer
exit

नोट: यदि आप एक बेहतर या आसान तरीका जानते हैं तो एक टिप्पणी जोड़ें, मैं गाइड को अपडेट करूंगा।


2
2013-11-02 के अनुसार, विभिन्न तरीकों को विभिन्न संस्करणों के साथ समायोजित करना आसान नहीं है। यह विधि जो भी वर्तमान संस्करण है वह काम करती है और "-yes" जैसे उपयुक्त-विकल्प के साथ स्वचालित / स्क्रिप्टेड / रन नायाब हो सकती है।
स्टीफन गौरिचोन

--yes, --assume-yes, --force-yesविकल्प के साथ oracle-java8- इंस्टॉलर के साथ इस विधि की कोशिश की, लेकिन हर बार इंस्टॉलेशन मुझे एंटर-की के साथ लाइसेंस समझौते को स्वीकार करना चाहता है।
Drey

9

जावा एसई विकास किट 12.0.2

tar.gz

wget  --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/12.0.2+10/e482c34c86bd4bf8b56c0b35558996b9/jdk-12.0.2_linux-x64_bin.tar.gz

क्यों --no-check-certificate? यह उस स्विच के बिना ठीक काम करता है ताकि सुरक्षा के संदर्भ में इसका उपयोग न किया जाए, खासकर जब यह अप्रचलित हो।
tymik


6

ओरेकल ने डाउनलोड लिंक पर एक रोकथाम कुकी डाल दी है, जिससे आप शर्तों से सहमत होने के लिए बाध्य हो सकते हैं, भले ही जावा का उपयोग करने के लिए लाइसेंस समझौते में स्पष्ट रूप से कहा गया हो कि केवल जावा का उपयोग करके आप लाइसेंस के लिए 'सहमत' हैं।

ओरेकल चाहता है कि विधि आप एक समझौते के साथ इसे डाउनलोड करने के लिए है। उसके बाद, यह स्क्रिप्ट cn आपके विशिष्ट लिनक्स के लिए संशोधित किया जाएगा

#!/bin/bash
#Author: Yucca Nel http://thejarbar.org
#Will restart system
#Modify these variables as needed...
tempWork=/tmp/work
locBin=/usr/local/bin
javaUsrLib=/usr/lib/jvm

sudo mkdir -p $javaUsrLib
mkdir -p $tempWork
cd $tempWork

#Extract the download
tar -zxvf $downloadDir/jdk*tar.gz

#Move it to where it can be found...

sudo mv -f $tempWork/jdk* $javaUsrLib/

sudo ln -f -s $javaUsrLib/jdk1/bin/* /usr/bin/

#Update this line to reflect versions of JDK...
export JAVA_HOME="$javaUsrLib/jdk1.7.0_03"
#Extract the download
tar -zxvf $tempWork/*

#Move it to where it can be found...

sudo mv -f $tempWork/jdk1* $javaUsrLib/

sudo ln -f -s $javaUsrLib/jdk1*/bin/* /usr/bin/
sudo rm -rf $tempWork
#Update this line to reflect newer versions of JDK...
export JAVA_HOME="$javaUsrLib/jdk1.7.0_03"

if ! grep "JAVA_HOME=$javaUsrLib/jdk1.7.0_03" /etc/environment
then
    echo "JAVA_HOME=$javaUsrLib/jdk1.7.0_03"| sudo tee -a /etc/environment
fi


exit 0

1
यह उत्तर मानता है कि आप लिनक्स का उपयोग कर रहे हैं, और यह कि आप इसे गैर-मानक तरीके / स्थान पर स्थापित करना चाहते हैं, और अन्य चीजों का एक गुच्छा। एक बेहतर जवाब होगा "डाउनलोड वेबसाइट पर इंस्टॉलेशन निर्देशों का पालन करें" ... जब तक आप उबंटू का उपयोग नहीं कर रहे हैं, उस स्थिति में इसे करने के अन्य तरीके हैं।
स्टीफन सी

8
और यह कैसे अजीब है कि उत्तर लिनक्स को मानता है जब प्रश्न शीर्षक में लिनक्स शामिल है? Sceipt एक आकार-फिट-सभी नहीं है, यह देखते हुए कि लिनक्स स्वयं ऐसा नहीं है। यह देखते हुए कि यह मेरे अपने प्रश्न का उत्तर है, मैंने इसका परीक्षण किया है और इसने मेरे लिए काम किया है।
thejartender

6

JCE8 की आवश्यकता वाले लोगों के लिए भी आप इसे डाउनलोड कर सकते हैं।

curl -L -C - -b "oraclelicense=accept-securebackup-cookie" -O http://download.oracle.com/otn-pub/java/jce/8/jce_policy-8.zip

या

wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jce/8/jce_policy-8.zip

5

यह JDK 6 के लिए काम करता है, आपको बस नवीनतम संस्करण के साथ डाउनलोड यूआरएल को बदलने की आवश्यकता है।

wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk6-downloads-1637591.html;" http://download.oracle.com/otn-pub/java/jdk/6u33-b03/jdk-6u33-linux-x64.bin

यह काम करता है लेकिन मैं 6u48 का चयन नहीं कर सका क्योंकि आपके पास 6u33-b03 है।
जैकब फिलिप्स

2013-11-02 को, यह काम नहीं कर सकता था। फ़ाइल के बजाय एक HTML पंजीकरण पृष्ठ डाउनलोड करें।
स्टीफन गौरिचोन

5

यह कमांड अभी (2018-09-06) पर jdk8 tgz पैकेज डाउनलोड कर सकता है, शुभकामनाएँ!

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/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"

मैंने दूसरों के आदेश की कोशिश की, लेकिन कुछ भी काम नहीं किया, लेकिन यह एक सुचारू रूप से काम करता था (20 / सितंबर / 2019 को चला)।
एक और कोडर

4

हर नए जावा संस्करण के लिए नए लिंक का उपयोग करने या मौजूदा स्क्रिप्ट को बदलने के बजाय, मैं आवश्यक जावा संकुल के डाउनलोड को स्वचालित करने के लिए और बाद में स्थापना के माध्यम से अधिक सामान्य तरीके की तलाश कर रहा था yum localinstall ${JAVA_ENVIRONMENT}-${JAVA_VERSION}-linux-x64.rpm

मैंने पैकेज खोजने और इसे डाउनलोड करने के लिए मैन्युअल / उपयोगकर्ता कार्रवाई के समान किसी भी तरह के तुच्छ दृष्टिकोण का उपयोग किया है। मैं बहुत यकीन है कि एक जैसे अन्य उपकरणों के उपयोग से यह करने के लिए एक और अधिक सुरुचिपूर्ण रास्ता मिलेगा भी कर रहा हूँ egrep, awk, आदि .., तो आप यहां एक उदाहरण के रूप में छोड़:

#!/bin/bash

### Proxy settings
# If there is a company proxy 

PROXY="my.proxy.local:8080"
PROXY_TYPE="--proxy-ntlm" # or leave empty with ""
USER="user"
PASS='pass'

### Find out the links to JRE and JDK 
# To do so, got to the page http://www.oracle.com/technetwork/java/javase/downloads/

BASE_URL="technetwork/java/javase/downloads"

# Put the whole page into a single string/line

BASE_URL_OUTPUT="$(curl -s -k ${PROXY_TYPE} -x "http://${USER}:${PASS}@${PROXY}" -L0 http://www.oracle.com/${BASE_URL}/)"

# Define the environments to download 

JAVA_ENVIRONMENTS=("JRE" "JDK") # ! yet "SERVER-JRE"

for JAVA_ENVIRONMENT in "${JAVA_ENVIRONMENTS[@]}"
do

echo
echo "JAVA_ENVIRONMENT="$JAVA_ENVIRONMENT
echo

for (( JAVA_BASE_VERSION = 8; JAVA_BASE_VERSION <= 10; JAVA_BASE_VERSION += 2 ))  
do

echo "JAVA_BASE_VERSION="$JAVA_BASE_VERSION

### "Read the page"
# and follow the links for the package interested in 

DOWNLOAD_SITE="$(echo $BASE_URL_OUTPUT | grep -m 1 -io "${JAVA_ENVIRONMENT}${JAVA_BASE_VERSION}-downloads-[0-9]*.html" -- | tail -1)"
echo "DOWNLOAD_SITE="$DOWNLOAD_SITE

### Gather the necessary download links
# To do so, following the link to the download site
# reading and accept the license 
# 
# ... the greedy regular expression is to address the different syntax of the links
# and already prepared for OR .gz files 

DOWNLOAD_LINK_OUTPUT="$(curl -s -k ${PROXY_TYPE} -x "http://${USER}:${PASS}@${PROXY}" -L -j -H "Cookie: oraclelicense=accept-securebackup-cookie" http://www.oracle.com/${BASE_URL}/${DOWNLOAD_SITE} |  grep -io "filepath.*${JAVA_ENVIRONMENT}-[${JAVA_BASE_VERSION}].*linux[-_]x64[._].*\(rpm\)" -- | cut -d '"' -f 3 | tail -1)"

# and echo out the link

echo "DOWNLOAD_LINK_OUTPUT="$DOWNLOAD_LINK_OUTPUT

done

done

के बाद से डाउनलोड लिंक अब उपलब्ध हैं, एक के साथ आगे आगे बढ़ सकते हैं wgetया curl


3

उपरोक्त सभी आपको लगता है कि आप नवीनतम जावा RPM के लिए URL जानते हैं ...

ओरेकल https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=397248601136938&id=1414485.1 पर प्रलेखित प्रत्येक जावा संस्करण के नवीनतम अपडेट के लिए लगातार लिंक प्रदान करता है। - हालांकि आपको एक ओरेकल सपोर्ट अकाउंट बनाने / लॉग इन करने की आवश्यकता है। । * अन्यथा आप केवल प्रत्येक जावा संस्करण के अंतिम "सार्वजनिक" अपडेट का उपयोग कर सकते हैं, उदाहरण के लिए 1.6_u45 (मार्च 2013; नवीनतम अपडेट u65, अक्टूबर 2013) *

एक बार जब आप लगातार लिंक जानते हैं , तो आपको इसे वास्तविक डाउनलोड के लिए हल करने में सक्षम होना चाहिए; निम्नलिखित मेरे लिए काम करता है, हालांकि मुझे अभी तक नहीं पता है कि "अरु" संदर्भ बदलता है या नहीं।

ME=<myOracleID>
PW=<myOraclePW>
PATCH_FILE=p13079846_17000_Linux-x86-64.zip

echo "Get real URL from the persistent link"

wget -o getrealurl.out --no-cookies --no-check-certificate --user=$ME \
--password=$PW --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com" \
https://updates.oracle.com/Orion/Services/download/$PATCH_FILE?aru=16884382&\
patch_file=$PATCH_FILE

wait    # wget appears to go into background, so "wait" waits 
        # until all background processes complete

REALURL=`grep "^--" getrealurl.out |tail -1 |sed -e 's/.*http/http/'`
wget -O $PATCH_FILE $REALURL
#These last steps must be done quickly, as the REALURL seems to have a short-lived 
#cookie on it and I've had no success with  --keep-session-cookies etc.

1
पासवर्ड ट्रांसमिट करते समय मैं -नो-चेक-सर्टिफिकेट का उपयोग करने की दृढ़ता से सलाह दूंगा।
रिक मोरिट्ज़

3

जैसा कि पहले से ही यहां पोस्ट किया गया है: https://stackoverflow.com/a/41718895/4370196

जेडीके 8 अपडेट के लिए अपडेट 121

चूंकि ओरेकल ने अपने डाउनलोड लिंक में कुछ md5hash डाला है, इसलिए कोई भी स्वचालित रूप से कमांड लाइन के लिए डाउनलोड लिंक को इकट्ठा नहीं कर सकता है।

इसलिए मैंने नवीनतम jdk डाउनलोड लिंक प्राप्त करने के लिए कुछ नॉटी बैश कमांड लाइन को टेंक किया, इसे डाउनलोड किया और सीधे आरपीएम के माध्यम से इंस्टॉल किया। सभी के लिए जो रुचि रखते हैं:

wget -q http://www.oracle.com/technetwork/java/javase/downloads/index.html -O ./index.html && grep -Eoi '] +>' index.html | grep -Eoi '/technetwork/java/javase/downloads/jdk8-downloads- '0-9acing+.html' | (हेड-एन 1) | awk '{print " http://www.oracle.com " $ 1}' | xargs wget --no-कूकीज-header "कुकी: gpw_e24 = xxx; oraclelicense = स्वीकार-सिक्योरबैकअप-कुकी;" -O index.html -q && grep -Eoi '"filepath": "[^"] + jdk-8u [0-9] + - linux-x64.rpm "' index.html | grep -Eoi 'http: [| ^ "] + '| xargs wget --no-कूकीज-header "कुकी: gpw_e24 = xxx; oraclelicense = स्वीकार-सिक्योरबैकअप-कुकी;" -q -O ./jdk8.rpm && sudo rpm -i/jdk8.rpm

बोल्ड हिस्सा अपनी पसंद के पैकेज से बदला जाना चाहिए।


हां, किसी लिंक को इकट्ठा करना अब इतना आसान नहीं है। मैंने नवीनतम JRE और JDK संस्करण 8 और 9 के लिए डाउनलोड लिंक प्राप्त करने के लिए एक बैश स्क्रिप्ट में एक समान दृष्टिकोण का उपयोग किया है । यह उत्तर के रूप में इस थ्रेड में पाया जा सकता है ।
U880D

2

मैं इसे (डेबियन आधारित लिनक्स डिस्ट्रोस के लिए) पैकेज का उपयोग करके हल करता हूं java-package कुछ समय (विभिन्न आर्किटेक्चर के लिए) , फिर उन्हें आंतरिक रूप से वितरित करता हूं।

बड़ा प्लस पक्ष यह है कि यह विधि हमेशा काम करती है; कोई फर्क नहीं पड़ता कि ओरेकल के वेब पेज कितने पागल हो जाते हैं। Oracle अब मेरा निर्माण नहीं तोड़ सकता है!

नकारात्मक पक्ष यह है कि शुरू में स्थापित करने के लिए यह थोड़ा अधिक काम है।

  • एक ब्राउज़र में मैन्युअल रूप से tar.gz फ़ाइलों को डाउनलोड करें (इस प्रकार उनकी शर्तों को "स्वीकार")
  • भागो make-jpkg jdk-7u51-linux-x64.tar.gz। यह बनाता हैoracle-java8-jdk_8_amd64.deb
  • इसे अपने संगठन में वितरित करें

इंटरनेट पर वितरण के लिए, मैं सुझाव देता हूं कि एक पासवर्ड संरक्षित उपयुक्त भंडार का उपयोग करें या सममित एन्क्रिप्शन का उपयोग करके कच्चे पैकेज प्रदान करें:

passphrase="Hard to crack string. Use /dev/urandom for inspiration."
gpg --batch --symmetric --force-mdc --passphrase-fd 0 \
   oracle-java8-jdk_8_amd64.deb <<< "$passphrase"

बेशक (इंटरनेट पर अनएन्क्रिप्टेड) ​​.deb पैकेज उपलब्ध कराना संभवतः Oracle के साथ आपके लाइसेंस समझौते का उल्लंघन है, जिसमें कहा गया है:

... Oracle आपको अनुदान देता है ... लाइसेंस ... आंतरिक रूप से सॉफ्टवेयर को पूरा करने और उपयोग करने के लिए, चल रहे प्रोग्राम के एकमात्र उद्देश्य के लिए unmodified

प्राप्त करने के अंत में, यदि आपके पास apt रेपो का पासवर्ड संरक्षित है, तो आपको बस इतना करना apt-get installहोगा। यदि आपके पास कच्चे पैकेज हैं, तो डाउनलोड करें, डिक्रिप्ट करें और dpkg -iउन्हें। एक जादू की तरह काम करता है!


2
इसलिए यह लाइसेंस का सम्मान करते हुए इसे लागू किया गया। यह कमाल है :-)
कोवसर

2

यह मेरे लिए काम JDK8 wget

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2F%www.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"

2

2017-04-25 तक, मेरे लिए स्वीकृत जवाब काम नहीं कर रहा था। हालांकि, सरल समाधान विकल्प के -bबजाय ध्वज का उपयोग कर रहा था --header

उदाहरण के लिए, jdk-1.8_131 पाने के लिए:

version='8u131'; wget -H -O jdk-$version-linux-x64.tar.gz --no-check-certificate --no-cookies -b "oraclelicense=a" http://download.oracle.com/otn-pub/java/jdk/$version-b11/jdk-$version-linux-x64.tar.gz

यह पृष्ठभूमि में निष्पादित करेगा, आउटपुट को लिख रहा है wget-log


1

प्रयत्न

wget --no-cookies --header "Cookie: s_nr=1359635827494; s_cc=true; gpw_e24=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk6downloads-1902814.html; s_sq=%5B%5BB%5D%5D; gpv_p24=no%20value" http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-x64-rpm.bin --no-check-certificate -O ./jdk-6u45-linux-x64-rpm.bin

यदि आप मेरे लिए Oracle JDK 6 पाने की कोशिश कर रहे हैं।

स्रोत: कर्ल / वेट का उपयोग करते हुए ओरेकल जेवीएम डाउनलोड करें


1

मैंने अपने gentoo बक्से के लिए एक jdk-download स्क्रिप्ट (tar.gz के लिए विशिष्ट) बनाई है। अन्य समान लिपियों की तरह अपडेट होने की आवश्यकता नहीं है, जो भी संस्करण आप चाहते हैं उसके लिए नवीनतम बिल्ड को "जानवर-बल" डाउनलोड करने की कोशिश कर रहा है।

उपयोग

jdk-download< <version> <platform> [<build>]

* <version> - Something like "8u40"
* <platform> - Usually i586 or x64
* <build> - The internal build number used by oracle, to avoid guessing and trying to download starting from 99 to 1 (build 0, really?!!)

ब्लॉग पोस्ट

बिटकॉइन पर स्रोत


1

oracle-java-download GitHub पर एक प्रोजेक्ट है जो आपको JDK 8 और JDK 9 के लिए डाउनलोड लिंक बनाने की अनुमति देता है जिसका उपयोग आप आगे की प्रक्रिया के लिए कर सकते हैं जैसे कि स्वचालित निर्माण या परिनियोजन प्रक्रियाओं में।

इसे चलाने के लिए Linux, Docker और JDK> = 8 की आवश्यकता होती है।


1

wget --no- कुकीज़ --no-check-certificate --header "कुकी: gpw_e24 = http% 3A% 2F% 2Fwww.oracle.com% 2F; oraclelicense = स्वीकार-सिक्योरबैकअप-कुकी" " http: // download। oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm?AuthParam=1516282527_40effcfefd78d78bce12c0a4030a1b05 "


HTTP अनुरोध भेजा गया, प्रतिक्रिया की प्रतीक्षा कर रहा है ... 403 निषिद्ध 2018-01-24 03:24:51 त्रुटि 403: निषिद्ध।
यहेजकेल बनिगा

1

प्रसंग

मुझे हाल ही में एक ही समस्या का सामना करना पड़ा और यद्यपि इस पृष्ठ पर टिप्पणियों और कुछ अन्य लोगों ने मददगार संकेत प्रदान किए - मैंने सोचा कि उन कदमों का दस्तावेजीकरण करना अच्छा होगा जो मैंने उन लोगों के लिए समस्या को ठीक करने के लिए उठाए जो आगे की मदद के लिए आवश्यक हो सकते हैं।

सिस्टम विवरण

मैं चरणबद्ध तरीके से pnda इंस्टॉलेशन गाइड का अनुसरण करके AWS पर स्थापित PNDA का अनुसरण कर रहा हूं:

https://github.com/pndaproject/pnda-guide/blob/develop/provisioning/aws/PREPARE.md

मैं AWS क्लाउड पर ubuntu 14.04 [free tier पात्र] का उपयोग कर रहा हूं, और 64 बिट windows8.1 लैपटॉप से ​​कोड चला रहा हूं। मैं सर्वर उदाहरण से कनेक्ट करने के लिए PUTTY का उपयोग कर रहा हूं। मैंने git से pnda कोड क्लोन किया https://github.com/pndaproject/pnda से ubuntu उदाहरण ।

महत्वपूर्ण लेख कृपया ध्यान दें कि यदि आप AWS पर उबंटू उदाहरण का उपयोग करने की योजना बनाते हैं, तो सुनिश्चित करें कि यह केवल 14.04 है। यदि आप संस्करण 16 का उपयोग करते हैं, तो यह काम नहीं करता है। मैंने इसे कठिन तरीका सीखा!

संकल्प कदम

जैसा कि उन लोगों के रूप में जो अब तक चली गई त्रुटि का सामना कर रहे हैं, यहां चर्चा की जानी चाहिए - दर्पण निर्माण फ़ाइल में निम्नलिखित चरण शामिल हैं -

1) [ sudo su -s ./create_mirror.sh ]पूर्ण दर्पण निर्माण प्रक्रिया को चलाने के लिए स्क्रिप्ट create_mirror.sh चलाएं

2) यह स्क्रिप्ट बदले में विभिन्न अन्य लिपियों को बुलाती है - उनमें से एक create_mirror_misc.sh ; यह स्क्रिप्ट संदर्भित करता है pnda-static-file-dependencies.txtजिसमें डाउनलोड की जाने वाली फ़ाइलों की सूची है।

3) pnda-static-file-dependencies.txt की पहली पंक्ति पर jdk-8u131-linux-x64.tar.gz फ़ाइल डाउनलोड करने के लिए एक संदर्भ है http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz oraclelicense=accept-securebackup-cookie; यह इस बिंदु पर है कि संदेश के साथ मेरी स्क्रिप्ट विफल हो रही थीFailed to download http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz after 3 retries

4) मैंने पेज को ब्राउज किया http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gzऔर निम्न त्रुटि संदेश प्रदर्शित किया**In order to download products from Oracle Technology Network you must agree to the OTN license terms**

5) इस समस्या को हल करने के लिए मैंने निम्नलिखित परिवर्तन किया pnda-static-file-dependencies.txt ; मैंने लाइसेंस टर्म एग्रीमेंट कंडीशन को बायपास करने के लिए --no- चेक-सर्टिफिकेट -no-कुकीज को जोड़ा

6) तो संशोधित कोड जैसा दिखता है - http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz --no-check-certificate --no-cookies oraclelicense=accept-securebackup-cookie

मुझे आशा है कि यह मददगार है।


1

तुम्हें कोशिश करनी चाहिए:

wget \
        --no-cookies \
        --header "Cookie: oraclelicense=accept-securebackup-cookie" \
        http://download.oracle.com/otn-pub/java/jdk/8u172-b11/a58eab1ec242421181065cdc37240b08/jdk-8u172-linux-x64.tar.gz \
        -O java.tar.gz

1

डाउनलोड jdk 8u221

$ wget -c --content-disposition "https://javadl.oracle.com/webapps/download/AutoDL?BundleId=239835_230deb18db3e4014bb8e3e8324f81b43"
$ old=$(ls -hat | grep jre | head -n1)
$ mv $old $(echo $old | awk -F"?" '{print $1}')

मेरा ब्लॉग 044-wget d jdk8u221


0

ऐसा इसलिए होता है क्योंकि जब आप अपने ब्राउज़र में डाउनलोड पृष्ठ पर "स्वीकार करें" बटन पर क्लिक करते हैं, तो वेबपेज एक कुकी को बचाता है जिसका उपयोग आप फ़ाइल को डाउनलोड करने से पहले अपने अनुबंध की जांच करने के लिए करते हैं। समस्या तब होती है जब कमांड लाइन से wget का उपयोग करके डाउनलोड करने का प्रयास किया जाता है और ऐसा इसलिए है क्योंकि फ़ाइल सर्वर के दृष्टिकोण से फ़ाइल को डाउनलोड करने के लिए wget अनुरोध के साथ कोई कुकी जानकारी नहीं भेजी गई है, आप पूरी तरह से नए उपयोगकर्ता हैं जिन्होंने लाइसेंस स्वीकार नहीं किया है समझौता।

एक उपाय यह है कि कुकी की जानकारी wget यूटिलिटी के विकल्प का उपयोग करके भेज दी जाए (जैसा कि अन्य उत्तरों में ऊपर दिखाया गया है)। आदर्श रूप से अगर कुछ सामग्री सुरक्षित है, तो आप विभिन्न सत्र प्रबंधन विकल्पों का उपयोग करेंगे जो कि उपलब्ध हैं। हालाँकि, इस विशेष समस्या के लिए, यह (वर्तमान में) Cookieडाउनलोड अनुरोध के साथ हेडर भेजकर हल किया गया है।


जब आप "स्वीकार करें" पर क्लिक करते हैं और उस पृष्ठ से URL को http://download.oracle.com/otn/java/...http://download.oracle.com/otn-pub/java/.../otn//otn-pub/
पकड़ते हैं

0

यहां बताया गया है कि कमांड को खुद कैसे प्राप्त करें। यह किसी भी संस्करण के लिए काम करता है:

  1. यहां संकुल पृष्ठ एक्सेस करें: https://www.oracle.com/java/technologies/javase-jdk11-downloads.html
  2. अपने इच्छित पैकेज के लिए डाउनलोड लिंक पर क्लिक करें
  3. बॉक्स को इंगित करें कि आपने "समीक्षा और स्वीकार ..." की जाँच करें
  4. बटन से लिंक पते पर राइट-क्लिक करें और कॉपी करें
  5. एक टेक्स्ट एडिटर में पेस्ट करें और फिर 'https: //' से शुरू होने वाले 'नेचुरल =' के बाद सब कुछ कॉपी करें।
  6. इस आदेश में डाउनलोड URL को अपडेट करें और आपको जाने के लिए अच्छा होना चाहिए:

    wget --no-check-certificate -c --header "कुकी: oraclelicense = स्वीकार-सिक्योरबैकअप-कुकी" https://download.oracle.com/otn/java/jdk/11.0.6+8/90eb79bb590d45c8971362673c5ab495/jdk- 11.0.6_linux-x64_bin.tar.gz

Wget को और समझाने के लिए, -no-check-certificate पर्याप्त स्पष्ट होना चाहिए, लेकिन हेडर सामग्री (किसी भी कॉल के लिए) आपके ब्राउज़र में डेवलपर टूल नेटवर्क टैब का उपयोग करके खोज करने योग्य है। डेवलपर टूल शक्तिशाली हैं और सीखने के लिए उपयुक्त हैं। का आनंद लें।


0

@ उत्तर ने मेरे लिए चाल चली, आपको उस आदेश में शर्तों को स्वीकार करने की आवश्यकता है जो आप सेट कर रहे हैं

"Cookie: oraclelicense=accept-securebackup-cookie"

इसलिए आपका अंतिम आदेश इस प्रकार दिखता है

wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz

आप बदलकर संस्करण को अद्यतन करने के लिए तय कर सकते हैं 8u131करने के लिए 8uXXX। इसलिए यह रेपो में उपलब्ध है।


-3
sudo wget --no-check-certificate --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com" "http://download.oracle.com/otn-pub/java/jdk/7u45-b18/jdk-7u45-linux-x64.rpm"

-4

अपने ब्राउज़र से डाउनलोड करने के लिए क्लिक क्यों न करें, जहाँ इसे डाउनलोड किया गया था, उस सटीक लिंक को कॉपी और पेस्ट करें:

wget http://download.oracle.com/otn-pub/java/jdk/7u40-b43/jdk-7u40-linux-x64.tar.gz?AuthParam=1380225131_dd70d2038c57a4729d8c0226684xxxx

आप अपने ब्राउज़र के नेटवर्क टैब को देखने के बाद लिंक को पता कर सकते हैं कि ओरेकल में शर्तों को स्वीकार करने और डाउनलोड करने के लिए क्लिक करने के बाद। क्रोम में F12। फ़ायरफ़ॉक्स में फ़ायरबग।


1
क्योंकि लोगों को बैश स्क्रिप्ट वाले सर्वर पर जावा की स्वचालित स्थापना के लिए इसकी आवश्यकता होती है।
साजा akजक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.