כיצד להתקין Java בעזרת Apt על Ubuntu 22.04

הקדמה

Java ו־JVM (Java's virtual machine) נדרשים לסוגים רבים של תוכנה, כולל Tomcat, Jetty, Glassfish, Cassandra ו־Jenkins.

במדריך זה, תתקין גרסאות שונות של Java Runtime Environment (JRE) ו־Java Developer Kit (JDK) באמצעות apt. תתקין OpenJDK וגם את JDK הרשמי מאת Oracle. לבסוף, תבחר בגרסה שברצונך להשתמש בה לפרויקטים שלך. כשתסיים, תוכל להשתמש ב־JDK לפיתוח תוכנה או להשתמש ב־Java Runtime כדי להריץ תוכנות.

הצטרף את היישומונים שלך מ- GitHub באמצעות DigitalOcean App Platform. תאפשר ל-DigitalOcean להתמקד בהתרחבות היישומון שלך.

דרישות מוקדמות

כדי למעקב אחרי המדריך הזה, יהיה עליך:

שלב 1 — התקנת Java

ההתקנה של Java כוללת שני רכיבים עיקריים. ה־JDK מספק כלים תוכנה עיקריים לפיתוח ב־Java, כמו מהדר ומנפח קוד. ה־JRE משמש לביצוע תוכניות Java בפועל. בנוסף, ישנן שתי אפשרויות התקנה עיקריות לבחירת Java. OpenJDK היא המימוש הפתוח של Java ומגיע מארוז באובונטו. Oracle JDK היא הגרסה המקורית של Java ומתוחזקת באופן מלא על ידי Oracle, מפתחי Java.

שתי הגרסאות הללו מוכרות רשמית על ידי Oracle. שתיהן גם מפותחות על ידי Oracle, אך ל־OpenJDK יש תוספת של תרומות קהילתיות עקב טבעו של קוד המקור הפתוח שלו. בכל מקרה, מתוך Java 11 שתי האפשרויות זהות פונקציונלית כעת כפי שמפורט על ידי Oracle. הבחירה בין מי מהן להתקין מגיעה לך לבחירה ברישיון המתאים למצבך. בנוסף, ל־OpenJDK יש אפשרות להתקין את ה־JRE בנפרד, בעוד של־OracleJDK מגיע עם ה־JRE שלו.

אפשרות 1 — התקנת JRE/JDK ברירת המחדל

אחת מהאפשרויות להתקין את Java היא להשתמש בגרסה שמובנית עם Ubuntu. כברירת מחדל, Ubuntu 22.04 כוללת את Open JDK 11, שהוא גרסה מקורית פתוחה של JRE ו-JDK.

כדי להתקין את הגרסה של OpenJDK של Java, יש לעדכן תחילה את אינדקס החבילות שלך באמצעות הפקודה הבאה:

  1. sudo apt update

בשלב הבא, יש לבדוק אם Java כבר מותקנת:

  1. java -version

אם Java לא מותקנת כרגע, תקבל את הפלט הבא:

Output
Command 'java' not found, but can be installed with: sudo apt install default-jre # version 2:1.11-72build1, or sudo apt install openjdk-11-jre-headless # version 11.0.14+9-0ubuntu2 sudo apt install openjdk-17-jre-headless # version 17.0.2+8-1 sudo apt install openjdk-18-jre-headless # version 18~36ea-1 sudo apt install openjdk-8-jre-headless # version 8u312-b07-0ubuntu1

בכדי להתקין את ה-JRE מתוך OpenJDK 11, יש להריץ את הפקודה הבאה:

  1. sudo apt install default-jre

ה-JRE יאפשר לך להריץ כמעט כל תוכנה ב-Java.

יש לוודא את ההתקנה עם הפקודה הבאה:

  1. java -version

תקבל את הפלט הבא:

Output
openjdk version "11.0.14" 2022-01-18 OpenJDK Runtime Environment (build 11.0.14+9-Ubuntu-0ubuntu2) OpenJDK 64-Bit Server VM (build 11.0.14+9-Ubuntu-0ubuntu2, mixed mode, sharing)

עשוי להיות צורך ב-JDK בנוסף ל-JRE כדי להדמות ולהריץ תוכנות מסוימות ב-Java. כדי להתקין את ה-JDK, יש להריץ את הפקודה הבאה, שגם תתקין את ה-JRE:

  1. sudo apt install default-jdk

ניתן לוודא שה-JDK מותקן על ידי בדיקת גרסת ה-javac, מהמהדר של Java:

  1. javac -version

תראה את הפלט הבא:

Output
javac 11.0.14

בשלב הבא, תלמד איך להתקין את JDK ו-JRE הרשמיים של Oracle.

אפשרות 2 — התקנת Oracle JDK 11

ההסכם לרישוי של Oracle עבור Java אינו מאפשר התקנה אוטומטית דרך מנהלי חבילות. כדי להתקין את Oracle JDK, שהיא הגרסה הרשמית המיוחסת על ידי Oracle, עליך ליצור חשבון ב-Oracle ולהוריד את JDK באופן ידני כדי להוסיף מאגר חבילות חדש עבור הגרסה שברצונך להשתמש בה. לאחר מכן תוכל להשתמש ב־apt כדי להתקין אותו בעזרת סקריפט התקנה של צד שלישי. Oracle JDK מגיעה עם JRE מובנה, לכן אין צורך להתקין את זה בנפרד.

הגרסה של JDK של Oracle שתצטרך להוריד חייבת להתאים לגרסת סקריפט ההתקנה. כדי לגלות איזו גרסה נדרשת, בקר בעמוד oracle-java11-installer.

אתה צריך לאתר את החבילה עבור Jammy, כפי שמוצג בתמונה הבאה:

בתמונה זו, גרסת הסקריפט היא 11.0.13. במקרה זה, תצטרך את Oracle JDK 11.0.13. מספר הגרסה שלך עשוי להשתנות בהתאם לזמן בו אתה מתקין את התוכנה.

אין צורך להוריד דבר מהעמוד הזה; תוריד את סקריפט ההתקנה דרך apt בקרוב.

הבא, בקר ב- הורדות בארכיון ואתר את הגרסה שמתאימה לך.

מהרשימה הזו, בחר את חבילת הארכיון הדחוסה של Linux x64 .tar.gz:

תתבקש לקבל את הסכם הרישיון של Oracle. בחר בתיבת הסימון כדי לקבל את הסכם הרישיון ולחץ על כפתור ההורדה הורדה . ההורדה שלך תתחיל. עשוי להיות עליך להתחבר לחשבון ה-Oracle שלך פעם נוספת לפני שההורדה מתחילה.

לאחר שהקובץ הורד, תצטרך להעביר אותו לשרת שלך. על המכונה המקומית שלך, העלה את הקובץ לשרת שלך. ב- macOS, Linux או Windows באמצעות תת-מערכת ההפעלה של Windows Windows Subsystem for Linux , השתמש בפקודת ה- scp כדי להעביר את הקובץ לספריית הבית של המשתמש sammy שלך. הפקודה הבאה מניחה ששמרת את קובץ Oracle JDK בתיקיית Downloads של המכונה המקומית שלך:

  1. scp Downloads/jdk-11.0.13_linux-x64_bin.tar.gz sammy@your_server_ip:~

לאחר שהעלאת הקובץ הושלמה, חזור לשרת שלך והוסף את המאגר השלישי שיעזור לך להתקין את ג'אווה של Oracle.

תחילה, יבא את מפתח החתימה שמשמש לאמת את התוכנה שאתה עומד להתקין:

  1. sudo gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/oracle-jdk11-installer.gpg --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

תראה את הפלט הזה:

Output
gpg: keybox '/usr/share/keyrings/oracle-jdk11-installer.gpg' created gpg: /tmp/trustdb.gpg: trustdb created gpg: key EA8CACC073C3DB2A: public key "Launchpad PPA for Linux Uprising" imported gpg: Total number processed: 1 gpg: imported: 1

לאחר מכן, הוסף את המאגר לרשימת המקורות של החבילות שלך:

  1. echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-jdk11-installer.gpg] https://ppa.launchpadcontent.net/linuxuprising/java/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/oracle-jdk11-installer.list > /dev/null

עדכן את רשימת החבילות שלך כדי להפוך את התוכנה החדשה לזמינה להתקנה:

  1. sudo apt update

המתקין יחפש את Oracle JDK שהורדת ב־/var/cache/oracle-jdk11-installer-local. יש ליצור את התיקייה הזו ולהעביר אליה את ארכיון Oracle JDK:

  1. sudo mkdir -p /var/cache/oracle-jdk11-installer-local/
  2. sudo cp jdk-11.0.13_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

לבסוף, יש להתקין את החבילה:

  1. sudo apt install oracle-java11-installer-local

המתקין יבקש ממך לקבל את הסכם הרישיון של Oracle תחילה. יש לקבל את ההסכם, ואז המתקין יחליץ את חבילת ה־Java ויתקין אותה.

עכשיו תתבונן כיצד לבחור את גרסת ה־Java שברצונך להשתמש בה.

שלב 2 — ניהול Java

ניתן להתקין מספר גרסאות של Java על שרת אחד. ניתן להגדיר איזו גרסה היא ברירת המחדל לשימוש בפקודת השורה באמצעות הפקודה update-alternatives.

  1. sudo update-alternatives --config java

כך תיראה הפלט אם התקנת שתי גרסאות של Java במדריך זה:

Output
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

יש לבחור את המספר הקשור לגרסת Java כדי להשתמש בה כברירת המחדל, או ללחוץ על ENTER כדי להשאיר את ההגדרות הנוכחיות במקום.

ניתן לעשות זאת עבור פקודות Java אחרות, כגון המהדר (javac):

  1. sudo update-alternatives --config javac

פקודות נוספות שבאפשרותך להפעיל עבורן פקודה זו כוללות, אך אינן מוגבלות ל־keytool, javadoc ו־jarsigner.

שלב 3 — הגדרת משתנה הסביבה JAVA_HOME

הרבה תוכניות שנכתבו באמצעות Java משתמשות במשתנה הסביבה JAVA_HOME כדי לקבוע את מיקום ההתקנה של Java.

כדי להגדיר משתנה זה בסביבת העבודה, ראשית עליכם לקבוע איפה מותקנת Java. השתמשו בפקודת update-alternatives:

  1. sudo update-alternatives --config java

פקודה זו מציגה כל התקנה של Java יחד עם נתיב ההתקנה שלה:

Output
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

במקרה זה, נתיבי ההתקנה הם כדלקמן:

  1. OpenJDK 11 נמצאת בנתיב /usr/lib/jvm/java-11-openjdk-amd64/bin/java.
  2. Oracle Java נמצאת בנתיב /usr/lib/jvm/java-11-oracle/jre/bin/java.

העתיקו את הנתיב מההתקנה המועדפת עליכם. לאחר מכן פתחו את /etc/environment באמצעות nano או עורך הטקסט המועדף עליכם:

  1. sudo nano /etc/environment

בסופו של קובץ זה, הוסיפו את השורה הבאה, וודאו שאתם מחליפים את הנתיב המודגש בנתיב הנכתב על ידכם, ושאינכם מכלילים את החלק bin/ של הנתיב:

/etc/environment
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"

שינוי בקובץ זה יגדיר את נתיב ה-JAVA_HOME עבור כל המשתמשים במערכתכם.

שמרו את הקובץ וצאו מהעורך.

טענו מחדש את הקובץ כדי להחיל את השינויים על ההפעלה הנוכחית שלכם:

  1. source /etc/environment

וודאו שהמשתנה הסביבתי הוגדר:

  1. echo $JAVA_HOME

תראו את הנתיב שהגדרתם לפני זמן קצר:

Output
/usr/lib/jvm/java-11-openjdk-amd64

משתמשים אחרים יצטרכו לבצע את הפקודה source /etc/environment או להתנתק ולהתחבר מחדש כדי להחיל את ההגדרה הזו.

מסקנה

במדריך זה התקנת גרסאות מרובות של Java ולמדת כיצד לנהל אותן. כעת ניתן להתקין תוכנה הפועלת על Java, כגון Tomcat, Jetty, Glassfish, Cassandra או Jenkins.

Source:
https://www.digitalocean.com/community/tutorials/how-to-install-java-with-apt-on-ubuntu-22-04