Kiedy próbuję pobrać Javę z Oracle, zamiast tego pobieram stronę z informacją, że muszę wyrazić zgodę na warunki licencji OTN.
Przepraszam!
Aby pobierać produkty z Oracle Technology Network, musisz wyrazić zgodę na warunki licencji OTN.
Być pewnym że...
- Twoja przeglądarka ma włączoną obsługę plików cookie i JavaScript.
- Kliknąłeś „Akceptuj licencję” dla produktu, który chcesz pobrać.
- Próbujesz pobrać w ciągu 30 minut od zaakceptowania licencji.
Jak mogę pobrać i zainstalować Javę?
Odpowiedzi:
AKTUALIZACJA DLA Oracle JDK 11
AKTUALIZACJA DLA JDK 10.0.2
AKTUALIZACJA DLA JDK 10.0.1
ZAKTUALIZOWANO DLA JDK 9 wygląda na to, że możesz go teraz pobrać bezpośrednio z java.net bez wysyłania nagłówka
AKTUALIZACJA DLA JDK 8u191
TAR GZ:
RPM:
AKTUALIZACJA DLA JDK 8u131
RPM:
TAR GZ:
RPM za pomocą curl:
We wszystkich powyższych przypadkach wpisz „i586” zamiast „x64”, aby pobrać kompilację 32-bitową.
curl
może być używany zamiastwget
.AKTUALIZACJA DLA JDK 7u79
TAR GZ:
RPM za pomocą curl:
Ponownie upewnij się, że podałeś poprawny adres URL dla pobieranej wersji. Adres URL można znaleźć tutaj: witryna pobierania Oracle JDK
ORYGINALNA ODPOWIEDŹ Z DNIA 9 czerwca 2012 r
Jeśli chcesz pobrać Oracle JDK z wiersza polecenia przy użyciu
wget
, istnieje obejście. Uruchomwget
polecenie w następujący sposób:Pamiętaj, aby zastąpić link do pobierania odpowiednim linkiem do pobieranej wersji.
źródło
--header "Cookie: oraclelicense=accept-securebackup-cookie"
(lub--header "Cookie: oraclelicense=[any-character(s)-but-a-single-space]"
) wydaje się działać dobrze. Czy możesz to potwierdzić?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
. W --no-cookies jest zbędny i --no-check-certyfikat jest konieczne tylko z Wget 1.12 i starszych, które są brakującym wsparcie SAN (głównie RHEL / CentOS 6.x). Wersja cURL to: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
( Irani zaktualizował moją odpowiedź, ale tutaj wszystko wyjaśnię. )
Edycja: Zaktualizowana dla Java 11.0.1 , wydana w 16 października 2018 r
Wget
JRE 8u191 (bez flag cookie): http://javadl.oracle.com/webapps/download/AutoDL?BundleId=235717_2787e4a523244c269598db4e85c51e0c
Aby uzyskać więcej informacji, pobierz pliki do pobrania w witrynie oracle.com i java.com .
-c / --continue
Pozwala na kontynuowanie niedokończonego pobierania.
--header "Cookie: oraclelicense=accept-securebackup-cookie"
Od 15 marca 2014 r. Ten plik cookie jest udostępniany użytkownikowi po zaakceptowaniu umowy licencyjnej i jest niezbędny do uzyskania dostępu do pakietów Java w download.oracle.com . Poprzednie (i pierwsze) wdrożenie 27 marca 2012 r. Wykorzystywało plik cookie
gpw_e24=http%3A%2F%2Fwww.oracle.com[...]
. Oba przypadki pozostają niezapowiedziane publicznie.Wartość nie musi być „
accept-securebackup-cookie
”.Wymagane dla Wget <1.13
--no-check-certificate
Wymagane tylko w przypadku wget 1.12 i wcześniejszych , które nie obsługują certyfikatów alternatywnej nazwy podmiotu (SAN) (głównie Red Hat Enterprise Linux 6.x i przyjaciół, takich jak CentOS). Wersja 1.13 została wydana w sierpniu 2011 roku.
Aby zobaczyć aktualną wersję, użyj:
wget --version | head -1
Nie wymagane
--no-cookies
Kombinacja
--no-cookies --header "Cookie: name=value"
jest wymieniona jako „ oficjalna ” obsługa plików cookie, ale nie jest tutaj bezwzględnie wymagana.kędzior
-L / --location
Wymagane, aby cURL przekierowywał przez wszystkie mirrory.
-C / --continue-at -
Patrz wyżej. cURL wymaga na końcu kreski (
-
).-b / --cookie "oraclelicense=accept-securebackup-cookie"
Taki sam jak
-H / --header "Cookie: ..."
, ale akceptuje także pliki.-O
Wymagane dla cURL do zapisywania plików (więcej informacji można znaleźć w porównaniu autora ).
źródło
-
) ” . To powinno być wystarczająco jasne, biorąc pod uwagę, jak inna formaflag
jest już pokazana w poleceniu.Downloading these releases requires an oracle.com account
. Jakieś obejście?Pobieranie Javy z wiersza poleceń zawsze było kłopotliwe. To, co robiłem realnie, to użycie FireFox (inne przeglądarki mogą działać), aby rozpocząć pobieranie na moim laptopie, wstrzymać (w oknie pobierania), użyć elementu menu „Kopiuj łącze pobierania” menu kontekstowego wyświetlanego dla pobieranie pliku. Tego adresu URL można następnie użyć w systemie Linux, aby pobrać ten sam plik. Oczekuję, że URL ma krótki czas życia. Brzydki, ale ogólnie udany.
źródło
AuthParam
ma coś wspólnego z Oracle sprawdzającym, czy użytkownik zgodził się na licencję, czy nie.Zaktualizowano dla JDK 8u171 RPM
Nieaktualne linki poniżej
Zaktualizowano dla JDK 8u161 RPMZaktualizowano dla JDK 8u152 RPM
Zaktualizowano dla JDK 8u144 RPM
Zaktualizowano dla JDK 8u131 RPM
Zaktualizowano dla JDK 8u121 RPM
źródło
Wiem, że Oracle uczyniło wszystko, co możliwe, aby ich środowisko Java Runtime i Java SDK były tak trudne, jak to możliwe.
Oto kilka wskazówek dla miłośników wiersza poleceń.
Dla systemów podobnych do Debiana (testowane na
Debian
squeeze iUbuntu
12.x +)Uwaga: jeśli znasz lepszy lub łatwiejszy sposób dodać komentarz, zaktualizuję przewodnik.
źródło
--yes, --assume-yes, --force-yes
opcjami, ale za każdym razem instalacja wymaga akceptacji umowy licencyjnej z enter-key.Java SE Development Kit 12.0.2
TAR.GZ
źródło
--no-check-certificate
? bez tego przełącznika działa dobrze, więc pod względem bezpieczeństwa nie należy go używać, zwłaszcza gdy jest przestarzały.ostatnio przetestowane,
Pamiętaj, że sprawdzanie certyfikatów jest wyłączone, jeśli zależy Ci na absolutnym bezpieczeństwie. :)
źródło
Firma Oracle umieściła plik cookie zapobiegawczy w łączu do pobierania, aby zmusić użytkownika do wyrażenia zgody na warunki, mimo że umowa licencyjna na korzystanie z oprogramowania Java wyraźnie stanowi, że jedynie za pomocą oprogramowania Java „zgadzasz się” na licencję.
Metodą, której chce Oracle, jest pobranie jej na podstawie umowy. Następnie skrypt ten można zmodyfikować dla konkretnego systemu Linux
źródło
Również dla tych, którzy potrzebują JCE8, możesz to pobrać.
Lub
źródło
Działa to w przypadku JDK 6, wystarczy zastąpić adres URL pobierania najnowszą wersją.
źródło
to polecenie może teraz pobrać pakiet jdk8 tgz (06.09.2018), powodzenia!
źródło
Zamiast używać do każdej nowej wersji Java nowego łącza lub zmieniać istniejące skrypty, szukałem bardziej ogólnego sposobu zautomatyzowania pobierania wymaganych pakietów Java, a następnie instalacji za pośrednictwem
yum localinstall ${JAVA_ENVIRONMENT}-${JAVA_VERSION}-linux-x64.rpm
.Użyłem w jakiś sposób trywialnego podejścia podobnego do ręcznego / działania użytkownika, aby znaleźć pakiet i go pobrać. Jestem też pewien, że będzie znaleźć bardziej elegancki sposób to zrobić przy użyciu innych narzędzi, takich jak
egrep
,awk
itd .., więc zostaw go jako przykład tutaj:Ponieważ linki do pobierania są już dostępne, można przejść dalej za pomocą
wget
lubcurl
.źródło
Wszystkie powyższe wydają się zakładać, że znasz adres URL najnowszej wersji Java RPM ...
Oracle zapewnia trwałe łącza do najnowszych aktualizacji każdej wersji Java zgodnie z dokumentacją na https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=397248601136938&id=1414485.1 - chociaż musisz utworzyć / zalogować się na konto Oracle Support . * W przeciwnym razie możesz uzyskać dostęp tylko do ostatniej „publicznej” aktualizacji każdej wersji Java, np. 1.6_u45 (marzec 2013; Najnowsza aktualizacja to u65, październik 2013) *
Gdy poznasz stały link, powinieneś być w stanie rozwiązać go do rzeczywistego pobrania; Poniższe działa dla mnie, choć nie wiem jeszcze, czy zmieni się odniesienie do „aru”.
źródło
Jak już napisano tutaj: https://stackoverflow.com/a/41718895/4370196
Aktualizacja dla JDK 8 Update 121
Ponieważ Oracle wstawiło trochę md5hash w swoich linkach do pobrania, nie można automatycznie skompletować linku do pobrania dla wiersza poleceń.
Więc majstrowałem w paskudnej linii poleceń bash, aby uzyskać najnowszy link do pobrania jdk, pobrać go i zainstalować bezpośrednio przez rpm. Dla wszystkich zainteresowanych:
Pogrubiona część powinna zostać zastąpiona przez pakiet własnych upodobań.
źródło
Rozwiązuję to (dla dystrybucji Linuksa opartych na Debianie), tworząc pakiety przy użyciu
java-package
kilka razy (dla różnych architektur), a następnie dystrybuując je wewnętrznie.Dużą zaletą jest to, że ta metoda zawsze działa; bez względu na to, jak szalone stają się strony internetowe Oracle. Oracle nie może już złamać mojej wersji!
Minusem jest to, że początkowo wymaga nieco więcej pracy.
make-jpkg jdk-7u51-linux-x64.tar.gz
. To tworzyoracle-java8-jdk_8_amd64.deb
Do dystrybucji przez Internet sugeruję użycie repozytorium apt chronionego hasłem lub dostarczenie surowych pakietów przy użyciu szyfrowania symetrycznego:
Oczywiście udostępnianie (niezaszyfrowanych) pakietów .deb w Internecie jest prawdopodobnie naruszeniem umowy licencyjnej z firmą Oracle, która stwierdza:
Po stronie odbierającej, jeśli masz apt repo chroniony hasłem, wszystko, co musisz zrobić, to zrobić
apt-get install
. Jeśli masz surowe pakiety, pobierz je, odszyfruj idpkg -i
je. Działa jak marzenie!źródło
wget To działało dla mnie JDK8
źródło
Przyjęta odpowiedź nie działała dla mnie na dzień 25.04.2017. Jednak prostym rozwiązaniem było użycie
-b
flagi zamiast--header
opcji.Na przykład, aby uzyskać jdk-1.8_131:
To uruchomi się w tle, zapisując dane wyjściowe do
wget-log
.źródło
Próbować
jeśli jesteś podobny do mnie, próbując zdobyć Oracle JDK 6.
źródło: pobieranie Oracle JVM za pomocą curl / wget
źródło
Stworzyłem skrypt pobierania jdk (specyficzny dla tar.gz) dla moich urządzeń Gentoo. Nie musi być aktualizowany jak inne podobne skrypty, próbując „brutalnie” pobrać najnowszą wersję dla dowolnej wersji.
STOSOWANIE
Post na blogu
Źródło na bitbucket
źródło
oracle-java-download to projekt na GitHub, który pozwala tworzyć łącza pobierania dla JDK 8 i JDK 9, które można wykorzystać do dalszego przetwarzania, np. w procesach automatycznej kompilacji lub wdrażania.
Do uruchomienia wymagany jest Linux, Docker i JDK> = 8.
źródło
wget --no-cookies - nie-sprawdź-certyfikat - nagłówek "Cookie: gpw_e24 = http% 3A% 2F% 2Fwww.oracle.com% 2F; oraclelicense = accept-securebackup-cookie" " http: // download. oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm?AuthParam=1516282527_40effcfefd78d78bce12c0a4030a1b05 "
źródło
Kontekst
Ostatnio napotkałem ten sam problem i chociaż komentarze na tej stronie i kilka innych zawierały pomocne wskazówki - pomyślałem, że dobrze byłoby udokumentować kroki, które podjąłem, aby rozwiązać problem dla osób, które mogą potrzebować dalszej pomocy.
Szczegóły systemu
Postępuję zgodnie z konfiguracją PNDA w AWS, wykonując krok po kroku instrukcję instalacji pnda na:
Korzystam z Ubuntu 14.04 [kwalifikujący się do bezpłatnej warstwy] w chmurze AWS i uruchamiam kod z 64-bitowego laptopa z systemem Windows 8.1. Korzystam z PUTTY, aby połączyć się z instancją serwera. Sklonowałem kod pnda z https://github.com/pndaproject/pnda do instancji ubuntu.
Ważna uwaga Należy pamiętać, że jeśli planujesz używać instancji Ubuntu w AWS, upewnij się, że jest to tylko 14.04. Jeśli używasz wersji 16, to nie działa. Nauczyłem się tego na własnej skórze!
Kroki rozwiązania
Ci, którzy posunęli się tak daleko, że napotkali omawiany tutaj błąd, powinni wiedzieć - plik tworzenia kopii lustrzanej obejmuje następujące kroki -
1) Uruchom skrypt create_mirror.sh,
[ sudo su -s ./create_mirror.sh ]
aby uruchomić pełny proces tworzenia kopii lustrzanej2) Ten skrypt z kolei wywołuje różne inne skrypty - jednym z nich jest create_mirror_misc.sh ; ten skrypt odnosi się do
pnda-static-file-dependencies.txt
listy plików do pobrania.3) W pierwszej linii pliku pnda-static-file-dependencies.txt znajduje się odniesienie do pobrania pliku 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
; W tym momencie mój skrypt nie działa z komunikatemFailed to download http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz after 3 retries
4) Przejrzałem stronę
http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz
i zobaczyłem następujący komunikat o błędzie**In order to download products from Oracle Technology Network you must agree to the OTN license terms**
5) Aby rozwiązać ten problem, wprowadziłem następującą zmianę w
pnda-static-file-dependencies.txt
; Dodałem - no-check-certificate - no-cookies, aby ominąć warunki umowy licencyjnej6) Tak więc poprawiony kod wygląda następująco:
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
Mam nadzieję, że to jest pomocne.
źródło
powinieneś spróbować:
źródło
pobierz jdk 8u221
mój blog 044-wget 下载 jdk8u221
źródło
Dzieje się tak, ponieważ po kliknięciu przycisku „Zaakceptuj” na stronie pobierania w przeglądarce strona internetowa zapisuje plik cookie, którego używa do sprawdzenia Twojej umowy, zanim pozwala ci pobrać plik. Problem występuje podczas próby pobrania z wiersza polecenia za pomocą wget, a ponieważ nie ma informacji o plikach cookie z żądaniem wget dotyczących pobrania pliku, więc z perspektywy serwera plików jesteś zupełnie nowym użytkownikiem, który nie zaakceptował licencji umowa.
Jednym z rozwiązań jest wysyłanie informacji o plikach cookie za pomocą opcji --header narzędzia wget (jak pokazano powyżej w innych odpowiedziach). Idealnie, jeśli niektóre treści są chronione, możesz użyć różnych opcji zarządzania sesjami dostępnych z wget. W przypadku tego konkretnego problemu rozwiązano go (obecnie), wysyłając
Cookie
nagłówek z żądaniem pobrania.źródło
http://download.oracle.com/otn/java/...
zamiasthttp://download.oracle.com/otn-pub/java/...
po prostu zmienić/otn/
na/otn-pub/
Oto jak samodzielnie uzyskać polecenie. Działa to dla dowolnej wersji:
Zaktualizuj adres URL pobierania w tym poleceniu i powinieneś zacząć:
wget --no-check-certificate -c --header "Cookie: oraclelicense = accept-securebackup-cookie" https://download.oracle.com/otn/java/jdk/11.0.6+8/90eb79fb590d45c8971362673c5ab495/jdk- 11.0.6_linux-x64_bin.tar.gz
Aby dodatkowo wyjaśnić wget, --no-check-certyfikat powinien być wystarczająco przejrzysty, ale zawartość nagłówka (dla dowolnego połączenia) można wykryć za pomocą karty sieci narzędzi programisty w przeglądarce. Narzędzia programistyczne są potężne i warto poświęcić czas na naukę. Cieszyć się.
źródło
Odpowiedź @eric załatwiła sprawę, musisz zaakceptować warunki w ustawionym poleceniu, tj
tak wygląda twoje ostateczne polecenie
Możesz zdecydować o aktualizacji wersji, zmieniając
8u131
na8uXXX
. tak długo, jak długo jest dostępny w repozytorium.źródło
źródło
Kliknij, aby pobrać z przeglądarki, a następnie skopiuj i wklej dokładny link do miejsca, w którym został pobrany, na przykład:
Możesz znaleźć link, patrząc na kartę sieciową przeglądarki po zaakceptowaniu warunków w Oracle i kliknięciu, aby pobrać. F12 w Chrome. Firebug w przeglądarce Firefox.
źródło