अद्यतन : नीचे रूट विशेषाधिकार के बिना स्थापना
मैं आपको सलाह देता हूं कि ubuntu प्रणाली पर मैन्युअल रूप से पैकेज न स्थापित करें यदि आपकी समस्या को हल करने में सक्षम एक (अर्ध-आधिकारिक) भंडार पहले से ही है। इसके अलावा, विकास के लिए ओरेकल जेडडीके का उपयोग करें, बस (बहुत छिटपुट) संगतता मुद्दों से बचने के लिए (मैंने कई साल पहले कोशिश की थी, यह निश्चित रूप से अब बेहतर है)।
अपने सिस्टम में webupd8 रेपो जोड़ें :
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
अपना पसंदीदा संस्करण इंस्टॉल करें (जावा -6 से जावा -9 के संस्करण उपलब्ध):
sudo apt-get install oracle-java8-installer
आप jjk के कई संस्करण भी स्थापित कर सकते हैं, जिसमें ओपनजेडक और ओरेकल संस्करण को मिलाया जा सकता है। तब आप स्थापित संस्करण के बीच स्विच करने के लिए कमांड अपडेट-जावा-विकल्प का उपयोग कर सकते हैं :
# list available jdk
update-java-alternatives --list
# use jdk7
sudo update-java-alternatives --set java-7-oracle
# use jdk8
sudo update-java-alternatives --set java-8-oracle
आवश्यकताएँ
यदि आप स्थापित add-apt-repository: command not found
होना सुनिश्चित करते हैं software-properties-common
:
sudo apt-get install software-properties-common
यदि आप पुराने संस्करण उबंटू का उपयोग कर रहे हैं:
sudo apt-get install python-software-properties
रूट विशेषाधिकार के बिना JDK स्थापना
यदि आपने अपने लक्ष्य मशीन पर व्यवस्थापक अधिकार नहीं बनाए हैं, तो आपकी सबसे आसान शर्त है sdkman
कि आप ज़ुल्लु प्रमाणित ओपनजेडक को स्थापित करें:
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java
नोट : sdkman आधिकारिक ओरेकल JDK को भी स्थापित करने की अनुमति देता है, हालांकि यह डिफ़ॉल्ट विकल्प नहीं है। इसके साथ उपलब्ध संस्करण देखें:
sdk ls java
इसके साथ चुना संस्करण स्थापित करें:
sdk install java <version>
उदाहरण के लिए:
sdk install java 9.0.1-oracle
आदेशों की शब्दावली
सुडो <command> [command_arguments]
: सुपरसुअर विशेषाधिकार के साथ एक कमांड निष्पादित करें।
ऐड-ए-रिपॉजिटरी <PPA_id>
: उबंटू (हर डेबियन डेरिवेटिव की तरह और आमतौर पर हर लिनक्स वितरण बोलते हैं) में पैकेज का एक मुख्य भंडार होता है जो पैकेज निर्भरता और अपडेट जैसी चीजों को संभालता है। उबंटू में एक पीपीए (पर्सनल पैकेज आर्काइव) का उपयोग करके मुख्य रिपॉजिटरी का विस्तार करना संभव है, जिसमें आमतौर पर सिस्टम में उपलब्ध पैकेज नहीं होते हैं (जैसे कि ऑरेकल जेडके) या उपलब्ध लोगों के अपडेट किए गए संस्करण (उदाहरण: एलटीएस में लिबरऑफिस 5 केवल इसके माध्यम से उपलब्ध है। पीपीए )।
apt-get [install|update|upgrade|purge|...]
: it "" कमांड-लाइन पैकेज हैंडलर सिस्टम पर हर रिपॉजिटरी की स्थिति में हेरफेर करने के लिए उपयोग किया जाता है (स्थापित करना / अपडेट करना / अपग्रेड करना रिपॉजिटरी वर्तमान स्थिति के परिवर्तन के रूप में देखा जा सकता है)।
हमारे मामले में : कमांड के साथ sudo add-apt-repository ppa:webupd8team/java
हम सिस्टम को सूचित करते हैं कि अगले रिपॉजिटरी अपडेट को पैकेज की जानकारी को webupd8 रेपो से भी पुनः प्राप्त करना होगा।
जब sudo apt-get update
हम वास्तव में सिस्टम रिपॉजिटरी को अपडेट करते हैं (इस सभी कार्यों के लिए सुपरसुसर विशेषाधिकारों की आवश्यकता होती है, इसलिए हम कमांडो को कमांडो प्रस्तुत करते हैं)।
sudo apt-get install oracle-java8-installer
अपडेट-जावा-विकल्प ( अपडेट-विकल्प का एक विशिष्ट जावा संस्करण ): उबंटू में कई पैकेज समान कार्यक्षमता प्रदान करते हैं (इंटरनेट ब्राउज़ करें, मेल संकलित करें, एक पाठ फ़ाइल को संपादित करें या जावा / जावाैक निष्पादनयोग्य प्रदान करता है ...)। सिस्टम को उपयोगकर्ता के पसंदीदा टूल को चुनने की अनुमति देने के लिए एक विशिष्ट कार्य दिया गया है जिसके तहत सिम्बलिंक्स/etc/alternatives/
का उपयोग किया जाता है। ऊपर बताए अनुसार jdk को अपडेट करने का प्रयास करें (java 7 और java 8 के बीच स्विच करें) और देखें कि इस कमांड का आउटपुट कैसे बदलता है:
ls -l /etc/alternatives/java*
हमारे मामले में : sudo update-java-alternatives --set java-8-oracle
java-8-oracle execables को इंगित करने के लिए / etc / alternates के तहत सहानुभूति अपडेट करें।
अतिरिक्त सुविधाएं:
आदमी <command>
: प्रत्येक शेल कमांड और उसके विकल्पों पर (लगभग) एक बहुत अच्छी तरह से लिखित और विस्तृत मदद पढ़ने के लिए आदमी का उपयोग करना शुरू करें (इस छोटे से उत्तर में मेरे द्वारा बताए गए प्रत्येक आदेश में एक मैन पेज है, कोशिश करें man update-java-alternatives
)।
apt-cache search <search_key>
: उपलब्ध खोज पैकेज के लिए खोज करने के लिए APT कैश से क्वेरी करें (प्रदान पैकेज का नाम या पैकेज विवरण में कुछ शब्द हो सकता है)।
apt-cache show <package>
: एक विशिष्ट पैकेज (पैकेज संस्करण, स्थापित या नहीं, विवरण) के लिए APT जानकारी प्रदान करता है।