จะติดตั้ง Java SDK บน CentOS ได้อย่างไร?


99

ฉันมีCentOS 5 แต่ไม่รู้ขั้นตอนในการติดตั้ง Java SDK บน Linux

จะดาวน์โหลดไฟล์ RPM ได้ที่ไหนและจะทำอย่างไรต่อไปเพื่อติดตั้งอย่างสมบูรณ์

แล้วฉันต้องติดตั้งTomcat

หรือมีแพคเกจสำเร็จรูปทั้งหมดหรือไม่?


ฉันสงสัยว่าเราต้องเริ่มชัดเจนเมื่อเราหมายถึง Oracle Java หรือสามารถยอมรับทางเลือกโอเพนซอร์สอย่างใดอย่างหนึ่ง Sventek มีคำตอบที่ดี - แต่จะไม่ช่วยอะไรหากคุณมีเครื่องมือพร้อมผู้ดูแลที่ปฏิเสธที่จะแก้ไขปัญหาจนกว่าจะทำซ้ำบนเครื่องมือ Oracle Java / JDK
Danny Staple

คำตอบ:


164

คำสั่งต่อไปนี้จะแสดงรายการแพ็คเกจทั้งหมดที่เกี่ยวข้องโดยตรงกับ Java พวกเขาจะอยู่ในรูปแบบของjava-<version>.

$ yum search java | grep 'java-'

หากไม่มีแพ็กเกจที่พร้อมใช้งานคุณอาจต้องดาวน์โหลดที่เก็บใหม่เพื่อค้นหา ผมขอแนะนำการดูที่repo Dag Wieers' หลังจากดาวน์โหลดแล้วให้ลองใช้คำสั่งด้านบนอีกครั้ง

คุณจะเห็นแพ็คเกจ Java อย่างน้อยหนึ่งเวอร์ชันพร้อมให้ดาวน์โหลด ขึ้นอยู่กับเวลาที่คุณอ่านเวอร์ชันล่าสุดที่พร้อมใช้งานอาจแตกต่างกัน

java-1.7.0-openjdk.x86_64

แพ็คเกจข้างต้นเพียงอย่างเดียวจะติดตั้ง JRE เท่านั้น หากต้องการติดตั้งjavacและ JDK คำสั่งต่อไปนี้จะทำเคล็ดลับ:

$ yum install java-1.7.0-openjdk*

แพ็คเกจเหล่านี้จะถูกติดตั้ง (เช่นเดียวกับการอ้างอิง):

java-1.7.0-openjdk.x86_64
java-1.7.0-openjdk-accessibility.x86_64
java-1.7.0-openjdk-demo.x86_64
java-1.7.0-openjdk-devel.x86_64
java-1.7.0-openjdk-headless.x86_64
java-1.7.0-openjdk-javadoc.noarch
java-1.7.0-openjdk-src.x86_64

64
ทดสอบกับ CentOS 6.5 sudo yum install java-1.7.0-openjdk.x86_64ติดตั้งเฉพาะ JRE ( javacจะขาด) sudo yum install java-1.7.0-openjdk-develติดตั้ง JDK
ธัมมี่โกวดา

ฉันสามารถยืนยันได้ว่าสิ่งนี้ใช้ได้กับ CentOS เวอร์ชันเก่าด้วย (ฉันเพิ่งรันyum installคำสั่งบน 5.6)
crmpicco

หลังการติดตั้ง: กำหนดค่า iptables บน centos 6.5 -> / etc / sysconfig / iptables -> -A INPUT -i eth0 -p tcp -m tcp --dport 8080 -m state --state NEW, ESTABLISHED -j ACCEPT
hpaknia

1
@ThammeGowdaN ฉันส่งการแก้ไขรวมถึงคำแนะนำของคุณ
onebree

1
ทดสอบและยืนยันบน CentOS 7
onebree

34

@Sventeck, perfecto.

เอกสาร redhat เป็นแหล่งข้อมูลที่ยอดเยี่ยมเสมอ - บทช่วยสอนที่ดีที่อธิบายวิธีการติดตั้ง JDK ผ่าน yum จากนั้นการตั้งค่าเส้นทางสามารถพบได้ที่นี่ (ขอให้สนุก!) - ติดตั้ง OpenJDK และตั้งค่าเส้นทาง $ JAVA_HOME

OpenJDK 6:

yum install java-1.6.0-openjdk-devel

OpenJDK 7:

yum install java-1.7.0-openjdk-devel

หากต้องการแสดงรายการแพ็คเกจ java openjdk-devel ที่มีอยู่ทั้งหมดให้ลอง:

yum list "java-*-openjdk-devel"

1
ทดสอบกับ CentOS 6.4 ฉันยืนยันว่าเป็นวิธี "centos" ควรตั้งค่าตัวแปรสภาพแวดล้อม JAVA_HOME บน "/ etc / alternate / jre"
Emmanuel Keller

ต้องรักฉันสักหน่อย! ตัวแปรนี้ยังสามารถเก็บไว้ใน / etc / environment ซึ่งเป็นที่ที่ควรมีตัวแปร global ทั่วทั้งระบบ echo JAVA_HOME="path/to/JAVA_HOME" >> /etc/environment
xpros


13

ใน Centos 7 ฉันเพิ่งทำ

sudo yum install java-sdk

ฉันถือว่าคุณมี repo ทั่วไปอยู่แล้ว Centos เพิ่งค้นหา SDK ที่ถูกต้องด้วย -devel sufix



6

นี่คือข้อมูลโดยละเอียดเกี่ยวกับการตั้งค่า Java และเส้นทางบน CentOS6

ขั้นตอนด้านล่างนี้ใช้สำหรับการติดตั้ง Java เวอร์ชันล่าสุด 8:

  1. ดาวน์โหลดจาวาแพคเกจรอบต่อนาทีจากเว็บไซต์ของออราเคิล ( jdk-8-linux-x64.rpm )
  2. ติดตั้งจากรอบต่อนาที ( รอบต่อนาที -Uvh jdk-8-linux-x64.rpm )
  3. เปิด/ etc / profileและตั้งค่าเส้นทาง java บันทึก
  4. ตรวจสอบพา ธ การติดตั้ง java และเวอร์ชัน java ด้วยคำสั่ง: ซึ่ง java , java -version

ตอนนี้คุณสามารถทดสอบการติดตั้งด้วยโปรแกรม java ตัวอย่างได้แล้ว


3

เนื่องจาก Oracle ใส่ md5hash บางส่วนในลิงก์ดาวน์โหลดจึงไม่สามารถรวบรวมลิงก์ดาวน์โหลดสำหรับบรรทัดคำสั่งได้โดยอัตโนมัติ

ดังนั้นฉันจึงปรับแต่งบรรทัดคำสั่ง bash ที่น่ารังเกียจเพื่อรับลิงค์ดาวน์โหลด jdk ล่าสุดดาวน์โหลดและติดตั้งโดยตรงผ่าน rpm สำหรับทุกคนที่สนใจ:

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-9]+.html' | (หัว -n 1) | awk '{พิมพ์ " http://www.oracle.com " $ 1}' | xargs wget --no-cookies --header "คุกกี้: gpw_e24 = xxx; oraclelicense = accept-securebackup-cookie;" -O index.html -q && grep -Eoi '"filepath": "[^"] + jdk-8u [0-9] + - linux-x64.rpm "' index.html | grep -Eoi 'http: [ ^ "] + '| xargs wget --no-cookies --header "คุกกี้: gpw_e24 = xxx; oraclelicense = accept-securebackup-cookie;" -q -O ./jdk8.rpm && sudo rpm -i ./jdk8.rpm

ส่วนหนาควรถูกแทนที่ด้วยแพคเกจของความชอบของคุณ


1
แฮ็คที่ชอบธรรม
Aaron Altman

ผมเคยใช้วิธีการที่คล้ายกันในสคริปต์ทุบตีที่จะได้รับล่าสุด JRE และ JDK ลิงก์ดาวน์โหลดสำหรับรุ่น 8 และ 9 มันสามารถพบได้ในหัวข้อนี้เป็นคำตอบ
U880D

2

หากคุณต้องการ Oracle JDK และไม่ต้องการใช้ yum / rpm โปรดดูคำตอบนี้ที่นี่:

การดาวน์โหลด Java JDK บน Linux ผ่าน wget จะแสดงหน้าใบอนุญาตแทน

ตามโพสต์นั้นคุณสามารถดาวน์โหลด tarball โดยอัตโนมัติโดยใช้ curl และระบุส่วนหัวของคุกกี้

จากนั้นคุณสามารถวางเนื้อหา tarball ในตำแหน่งที่ถูกต้องและเพิ่ม java ใน PATH ของคุณตัวอย่างเช่น:

curl -v -j -k -L -H "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz > jdk.tar.gz

tar xzvf jdk.tar.gz
sudo mkdir /usr/local/java
sudo mv jdk1.8.0_45 /usr/local/java/
sudo ln -s /usr/local/java/jdk1.8.0_45 /usr/local/java/jdk

sudo vi /etc/profile.d/java.sh
export PATH="$PATH:/usr/local/java/jdk/bin"
export JAVA_HOME=/usr/local/java/jdk

source /etc/profile.d/java.sh

0

ใช้คำสั่งด้านล่างเพื่อติดตั้ง oracle java8 ผ่านเทอร์มินัล

ขั้นตอนที่ -1) ไปที่หน้าดาวน์โหลด Oracle JDK ค้นหาเวอร์ชัน RPM

ขั้นตอน -2) ดาวน์โหลด oracle java 8 โดยใช้คำสั่งด้านล่าง wget --header "Cookie: oraclelicense = accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441 /jdk-8u121-linux-x64.rpm

ขั้นตอนที่ -3) ติดตั้ง java8 โดยใช้คำสั่งด้านล่าง sudo yum localinstall jdk-8u121-linux-x64.rpm ตอนนี้ควรติดตั้ง JDK ที่ /usr/java/jdk1.8.0_121 ขั้นตอนที่ -4) ลบไฟล์. rpm ที่ดาวน์โหลดมาเพื่อใช้งาน พื้นที่. rm jdk-8u121-linux-x64.rpm

ขั้นตอนที่ -5) ตรวจสอบ java โดยใช้คำสั่ง java -version

ขั้นตอนที่ -6) หาก CentOS มีการติดตั้ง JDK หลายตัวคุณสามารถใช้คำสั่งทางเลือกเพื่อตั้งค่าทางเลือก java sudo เริ่มต้น --config java

ขั้นตอนที่ -7) ตัวแปรสภาพแวดล้อม JAVA_HOME ที่เป็นทางเลือก คัดลอกพา ธ ของ jdk ติดตั้งเช่น /usr/java/jdk1.8.0_121 ใช้คำสั่งด้านล่างเพื่อส่งออก java home export JAVA_HOME = / usr / java / jdk1.8.0_121 export PATH = $ PATH: $ JAVA_HOME


0

ฉันเขียนเชลล์สคริปต์เพื่อติดตั้ง / ถอนการติดตั้ง java บน centos คุณสามารถทำได้โดยเพียงแค่เรียกใช้เชลล์ แกนกลางของเปลือกนี้คือ:

1.download the jdk rpm(RedHat Package Manager) package.
2.install java using rpm.

สามารถดูรายละเอียดเพิ่มเติมได้ที่นี่: https://github.com/daikaixian/WaterShell/tree/master/program_installer

หวังว่ามันจะเหมาะกับคุณ


0

ป้อนคำอธิบายภาพที่นี่

นี่คือสิ่งที่ฉันทำ:

  1. ก่อนอื่นฉันดาวน์โหลด.tarไฟล์สำหรับ Java JDK และ JRE จากไซต์ Oracle

  2. แตก.tarไฟล์ลงในโฟลเดอร์ opt

  3. ฉันประสบปัญหาแม้ว่าจะตั้งค่าตัวแปรสภาพแวดล้อมของฉันJAVA_HOMEและPATHสำหรับ Java 9 แต่ก็ยังคงแสดง Java 8 เป็นสภาพแวดล้อมรันไทม์ของฉัน ดังนั้นฉันจึงเชื่อมโยงจากไดเร็กทอรี Java 9.0.4 เพื่อ/user/binใช้lnคำสั่ง

  4. ฉันใช้java -versionคำสั่งเพื่อตรวจสอบเวอร์ชันของ java ที่ถูกตั้งค่าเป็นสภาพแวดล้อมรันไทม์ java เริ่มต้นของฉัน


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.