تغییرات اخیر

در اینجا اطلاعیه‌ها، نسخه‌ها و تغییرات جدید لیارا فهرست می‌شوند.

آموزش و نحوه نصب جاوا با Apt در اوبونتو (JRE و JDK)


۱۰ مهر ۱۴۰۴

جاوا و ماشین مجازی جاوا (JVM) پایه و اساس بسیاری از نرم‌افزارها هستند، از جمله سرورهایی مثل Tomcat، Jetty، Glassfish، و ابزارهایی مانند Cassandra و Jenkins. اگر می‌خواهید برنامه‌هایی بسازید یا اجرا کنید که به جاوا وابسته‌اند، نصب درست آن ضروری است.

در این راهنما، قدم به قدم نصب نسخه‌های مختلف محیط اجرایی جاوا (JRE) و کیت توسعه جاوا (JDK) را با استفاده از ابزار apt بررسی می‌کنیم. تمرکزمان روی OpenJDK (نسخه متن‌باز) و JDK رسمی اوراکل خواهد بود. در پایان، یاد می‌گیرید چطور نسخه مورد نظرتان را انتخاب کنید. بعد از اتمام، می‌توانید از JDK برای نوشتن کد استفاده کنید یا با JRE برنامه‌های جاوا را اجرا نمایید.

نکته جالب: اگر اپلیکیشن‌های فرانت‌اند خود را از گیتهاب دیپلوی می‌کنید، لیارا می‌تواند گزینه خوبی باشد. این سرویس به شما اجازه می‌دهد روی مقیاس‌پذیری تمرکز کنید و بقیه کارها را به آن بسپارید.

با سرور ابو نتو لیارا، بدون دردسر سرور خود را تنها با چند کلیک مدیریت کنید.
✅ منابع کاملاً اختصاصی و پایدار✅ سرعت بالا و ترافیک نامحدود✅ امنیت پیشرفته و پشتیبانی 24/7
خرید و راه‌اندازی سرور اوبونتو ساعتی لیارا

آنچه در ادامه خواهید خواند:

  • پیش‌نیازها
  • گام اول: نصب جاوا
  • گام دوم: مدیریت جاوا
  • گام سوم: تنظیم متغیر محیطی JAVA_HOME
  • خطاهای رایج و رفع اشکال
  • سوالات متداول
  • جمع بندی

پیش‌نیازها

برای دنبال کردن این آموزش، به این موارد نیاز دارید:

  • یک سرور اوبونتو که طبق راهنمای تنظیم اولیه سرور اوبونتو راه‌اندازی شده باشد، شامل یک کاربر غیرروت با دسترسی sudo و فایروال فعال.

گام اول: نصب جاوا

نصب جاوا دو بخش اصلی دارد: JDK که ابزارهای توسعه مثل کامپایلر و دیباگر را فراهم می‌کند، و JRE که برای اجرای برنامه‌های جاوا لازم است. دو گزینه اصلی برای انتخاب وجود دارد: OpenJDK که نسخه متن‌باز جاوا است و به صورت پیش‌فرض در اوبونتو موجود است، و Oracle JDK که نسخه اصلی و تحت مدیریت کامل اوراکل است.

هر دو نسخه توسط اوراکل تأیید شده‌اند و هر دو توسط این شرکت توسعه می‌یابند، اما OpenJDK از کمک‌های جامعه متن‌باز هم بهره می‌برد. از جاوا 11 به بعد، این دو از نظر عملکردی کاملاً مشابه هستند، طبق توضیحات اوراکل. انتخاب بین‌شان بیشتر به لایسنس مورد نیازتان بستگی دارد. در OpenJDK می‌توانید JRE را جداگانه نصب کنید، اما Oracle JDK همراه با JRE ارائه می‌شود.

آموزش و نحوه نصب جاوا با Apt در اوبونتو (JRE و JDK)

نصب JRE/JDK پیش‌فرض

یکی از ساده‌ترین راه‌ها، استفاده از نسخه‌ای است که اوبونتو به صورت پیش‌فرض ارائه می‌دهد. اوبونتو معمولاً OpenJDK ۱۱ را شامل می‌شود، که نسخه متن‌باز JRE و JDK است.

ابتدا فهرست پکیج‌های apt را به‌روزرسانی کنید:

sudo apt update

سپس بررسی کنید آیا جاوا از قبل نصب شده است:

java -version

اگر نصب نشده باشد، خروجی چیزی شبیه این خواهد بود:

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 ۱۱، دستور زیر را اجرا کنید:

sudo apt install default-jre

این کار به شما اجازه می‌دهد تقریباً همه برنامه‌های جاوا را اجرا کنید.

برای تأیید نصب:

java -version

خروجی شبیه این خواهد بود:

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 را هم شامل می‌شود):

sudo apt install default-jdk

نسخه کامپایلر جاوا را چک کنید:

javac -version

خروجی:

javac 11.0.14

حالا بیایید سراغ نصب JDK رسمی اوراکل برویم.

نصب Oracle JDK ۱۱

لایسنس اوراکل اجازه نصب خودکار از طریق مدیر پکیج‌ها را نمی‌دهد. برای نصب Oracle JDK، باید حساب اوراکل بسازید، فایل را دستی دانلود کنید، یک مخزن جدید اضافه کنید و سپس با کمک اسکریپت نصب سوم‌شخصی، آن را نصب نمایید. Oracle JDK همراه با JRE است، پس نیازی به نصب جداگانه نیست.

نسخه JDK که دانلود می‌کنید باید با اسکریپت نصب همخوانی داشته باشد. برای چک کردن نسخه مناسب، به صفحه oracle-java11-installer بروید.

بسته مربوط به Jammy را پیدا کنید (مثل تصویر زیر):

در این مثال، نسخه اسکریپت ۱۱.۰.۱۳ است، پس باید Oracle JDK ۱۱.۰.۱۳ را دانلود کنید. نسخه شما ممکن است بسته به زمان نصب متفاوت باشد.

از این صفحه چیزی دانلود نکنید؛ اسکریپت را بعداً از طریق apt می‌گیرید.

حالا به صفحه آرشیو دانلودهای اوراکل بروید و نسخه را پیدا کنید.

صفحه دانلود آرشیو جاوا اوراکل، جایی که نسخه‌های قدیمی‌تر موجود است.

از لیست، بسته فشرده Linux x64 (.tar.gz) را انتخاب کنید:

صفحه‌ای ظاهر می‌شود که باید لایسنس اوراکل را بپذیرید. چک‌باکس را تیک بزنید و دانلود را شروع کنید. ممکن است نیاز به ورود دوباره به حساب اوراکل باشد.

پس از دانلود، فایل را به سرور منتقل کنید. اگر از مک، لینوکس یا ویندوز با WSL استفاده می‌کنید، از scp استفاده کنید (فرض کنید فایل در فولدر Downloads محلی‌تان است):

text

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

پس از آپلود، به سرور برگردید و مخزن سوم‌شخصی را اضافه کنید.

ابتدا کلید امضا را وارد کنید:

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

خروجی:

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

مخزن را به لیست منابع اضافه کنید:

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

فهرست پکیج‌ها را به‌روزرسانی کنید:

sudo apt update

نصب‌کننده فایل دانلودشده را در /var/cache/oracle-jdk11-installer-local جستجو می‌کند. این دایرکتوری را بسازید و فایل را منتقل کنید:

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

در نهایت، پکیج را نصب کنید:

sudo apt install oracle-java11-installer-local

نصب‌کننده لایسنس اوراکل را نشان می‌دهد؛ آن را بپذیرید تا استخراج و نصب انجام شود.

حالا نوبت مدیریت نسخه‌هاست.

گام دوم: مدیریت جاوا

می‌توانید چندین نسخه جاوا روی یک سرور داشته باشید. برای انتخاب نسخه پیش‌فرض در خط فرمان، از update-alternatives استفاده کنید:

sudo update-alternatives --config java

اگر هر دو نسخه را نصب کرده باشید، خروجی شبیه این است:

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:

شماره نسخه مورد نظر را انتخاب کنید یا Enter بزنید تا وضعیت فعلی حفظ شود.

این کار را برای دستورات دیگر مثل javac هم می‌توانید انجام دهید:

sudo update-alternatives --config javac

دستورات دیگری مثل keytool، javadoc و jarsigner هم قابل تنظیم هستند.

گام سوم: تنظیم متغیر محیطی JAVA_HOME

بسیاری از برنامه‌های جاوا از متغیر JAVA_HOME برای پیدا کردن محل نصب جاوا استفاده می‌کنند.

ابتدا محل نصب را پیدا کنید:

sudo update-alternatives --config java

خروجی مسیرها را نشان می‌دهد:

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:

مسیرها مثلاً این‌طور هستند:

  • OpenJDK ۱۱: /usr/lib/jvm/java-11-openjdk-amd64/bin/java
  • Oracle Java: /usr/lib/jvm/java-11-oracle/jre/bin/java

مسیر مورد نظر را کپی کنید (بدون bin/). فایل /etc/environment را ویرایش کنید:

sudo nano /etc/environment

در انتها اضافه کنید (مسیر را جایگزین کنید):

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

فایل را ذخیره کنید و خارج شوید.

تغییرات را اعمال کنید:

source /etc/environment

چک کنید:

echo $JAVA_HOME

خروجی:

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

کاربران دیگر باید source /etc/environment را اجرا کنند یا لاگ‌اوت/لاگ‌این کنند.

خطاهای رایج و رفع اشکال

“Java not found” یا “command not found” این یعنی سیستم جاوا را پیدا نمی‌کند. PATH را تنظیم کنید:

export PATH=$PATH:/usr/lib/jvm/java-11-openjdk-amd64/bin

“JAVA_HOME is not set” متغیر JAVA_HOME تنظیم نشده. آن را ست کنید:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

“Cannot locate the installed JDK or JRE version” سیستم JDK/JRE را پیدا نمی‌کند. مسیر را چک کنید و PATH را تنظیم نمایید:

export PATH=$PATH:/usr/lib/jvm/java-11-openjdk-amd64/bin

“Permission denied” در نصب کاربر مجوز ندارد. با sudo نصب کنید:

sudo apt-get install openjdk-11-jdk

سوالات متداول

در ادامه به سوالاتی که امکان دارد در این زمینه برای شما بدون پاسخ بماند، جواب‌های کوتاه اما مفیدی داده‌ایم که با استفاده از آن می‌توانید به سوال خود پاسخ صحیحی را بدهید.

چگونه چک کنم جاوا روی اوبونتو نصب است؟

دستور زیر را اجرا کنید:

java -version

اگر نصب باشد، نسخه را نشان می‌دهد؛ иначе خطا می‌دهد.

تفاوت JRE و JDK چیست؟

JRE محیط اجرایی برای برنامه‌های جاوا فراهم می‌کند. JDK شامل JRE به علاوه ابزارهای توسعه مثل کامپایلر و دیباگر است.

ویژگیJREJDK
محیط اجراییبلهبله
ابزارهای توسعهخیربله
کامپایلرخیربله
دیباگرخیربله

چگونه نسخه خاصی از جاوا نصب کنم؟

با apt-get، مثلاً برای جاوا ۱۱:

sudo apt-get install openjdk-11-jdk

چگونه بین نسخه‌های جاوا سوییچ کنم؟

از update-alternatives استفاده کنید، مثلاً:

sudo update-alternatives --config java

چگونه جاوا را حذف کنم؟

دستور:

sudo apt-get remove openjdk-11-jdk

JAVA_HOME چیست و چطور ست کنم؟

متغیر محیطی که به محل نصب جاوا اشاره می‌کند. ست کنید:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

جمع بندی

در این آموزش، نصب و مدیریت نسخه‌های مختلف جاوا روی اوبونتو را یاد گرفتید. حال می‌توانید نرم‌افزارهایی مانند Tomcat، Jetty، Glassfish، Cassandra یا Jenkins را نصب کنید و پروژه‌هایتان را پیش ببرید. بنابراین از این آموزش به درستی استفاده کنید.

به اشتراک بگذارید

برچسب‌ها: