كيفية تثبيت Java وتهيئته على Ubuntu: شرح OpenJDK وOracle JDK خطوة بخطوة

目次

1. ما هو Java؟ ومتى تحتاجه في Ubuntu

ما نوع لغة البرمجة Java؟

Java (جافا) هي لغة برمجة كائنية التوجه تُستخدم على نطاق واسع في جميع أنحاء العالم. من أبرز ميزاتها فكرة “اكتبها مرة، وشغّلها في أي مكان” (Write Once, Run Anywhere)، مما يعني أنه يمكن تشغيل التطبيقات المكتوبة بـJava على أنظمة تشغيل وأجهزة مختلفة دون الحاجة لتعديل الكود.

تُستخدم Java في تطوير تطبيقات سطح المكتب، وتطبيقات الويب، وتطبيقات الهواتف المحمولة (خصوصاً تطوير Android)، كما تُستخدم بكثرة في بناء الأنظمة المؤسسية الضخمة وأنظمة الخدمات المالية، وما تزال لغة نشطة وفعّالة حتى اليوم.

ما هو دور Java في Ubuntu؟

حتى في أنظمة Linux مثل Ubuntu، تُعتبر Java ضرورية جداً. فيما يلي بعض الحالات التي تحتاج فيها إلى Java:

1. تشغيل التطبيقات المطورة بـJava

الكثير من البرمجيات مكتوبة بلغة Java، وتتطلب وجود بيئة تشغيل Java (JRE) لتعمل. على سبيل المثال، أدوات التطوير مثل “Eclipse” و “IntelliJ IDEA”، وأدوات إدارة قواعد البيانات مثل “DBeaver” لن تعمل بدون Java.

2. إعداد بيئة تطوير وبرمجة Java

إذا كنت مبرمجاً أو طالباً وتريد تعلم Java أو تطوير تطبيقات باستخدامها على Ubuntu، ستحتاج لتثبيت مجموعة تطوير Java (JDK). Ubuntu يُعتبر بيئة تطوير شائعة، ومتوافق جداً مع Java، لذلك يفضله الكثير من المطورين.

3. تشغيل تطبيقات الخوادم

Java هي الأساس للعديد من أطر عمل خوادم الويب مثل Tomcat وSpring Boot. إذا كنت تريد تشغيل تطبيق ويب مكتوب بـJava على خادم Ubuntu، فوجود بيئة Java أمر أساسي.

الخلاصة: توافق مثالي بين Ubuntu وJava

نظراً لأن Ubuntu مفتوح المصدر وخفيف الوزن، فهو متوافق جداً مع لغات مثل Java التي تدعم تعدد الأنظمة. تثبيت Java على Ubuntu يمكّنك من استخدام التطبيقات والتطوير والتشغيل على الخوادم بكل سهولة.

2. أنواع Java المتوفرة في Ubuntu (OpenJDK مقابل Oracle JDK)

ما هي الخيارات المتاحة لـJava في Ubuntu؟

في Ubuntu يمكنك استخدام نوعين رئيسيين من بيئات تطوير Java: OpenJDK (أوبن جي دي كي) وOracle JDK (أوراكل جي دي كي).

كلاهما يُستخدم لتشغيل وتطوير برامج Java، لكنهما يختلفان من حيث الشركة المطورة، والرخصة، وطريقة التوزيع. من المهم اختيار النوع المناسب حسب حاجتك.

ما هو OpenJDK؟ (الافتراضي في Ubuntu)

OpenJDK (Open Java Development Kit) هو إصدار مفتوح المصدر من Java، طوّرته شركة Sun Microsystems (حالياً Oracle) ومازال يُطور بشكل مفتوح.

في Ubuntu، OpenJDK هو الخيار الافتراضي ويمكن تثبيته بسهولة باستخدام أمر apt.

أهم ميزات OpenJDK

  • مجاني بالكامل ويصلح للاستخدام التجاري
  • سهل التثبيت من مستودعات Ubuntu الرسمية
  • تحديثات أمنية منتظمة
  • بيئة تطوير مستقرة وتستخدمها العديد من الشركات

إذا لم تكن لديك متطلبات خاصة أو كنت تستخدم Java للأغراض العامة، فاختيار OpenJDK يكفي.

ما هو Oracle JDK؟ (مدعوم رسمياً)

Oracle JDK هو النسخة الرسمية التي تقدمها Oracle، مبنية على OpenJDK لكن مع تحسينات للأداء وبعض الأدوات الخاصة.

مع ذلك، رخصة Oracle JDK مختلفة، وقد تحتاج إلى اتفاقية ترخيص عند الاستخدام التجاري (الاستخدام الشخصي أو التعليمي غالباً لا توجد به مشكلة).

أهم ميزات Oracle JDK

  • دعم وصيانة رسمية من Oracle
  • يجب التأكد من الترخيص عند الاستخدام التجاري
  • تحديثات أمنية سريعة
  • بعض الميزات الإضافية غير الموجودة في OpenJDK

تثبيت Oracle JDK على Ubuntu يتطلب تحميله من الموقع الرسمي وضبطه يدوياً.

ملخص الفروقات بين OpenJDK وOracle JDK

البندOpenJDKOracle JDK
الشركة المطورةمجتمع المصادر المفتوحةشركة Oracle
الرخصةGPL + Classpath ExceptionOracle Binary Code License (مع ملاحظة الاستخدام التجاري)
التكلفةمجانيقد يكون مدفوعاً للاستخدام التجاري
الاستخدامالتطوير العام، التعلم، أدوات داخليةالخدمات التجارية والتشغيل واسع النطاق
طريقة التثبيتبسهولة عبر aptتحميل وضبط يدوي

الخلاصة: OpenJDK مناسب لمعظم مستخدمي Ubuntu

عند إعداد بيئة Java في Ubuntu، يكفي استخدام OpenJDK في أغلب الحالات، فهو موثوق ومتوافق مع أغلب المكتبات والأطر.

أما إذا كنت تحتاج لدعم رسمي أو تعمل في مشاريع تجارية كبيرة، قد تفضل استخدام Oracle JDK. اختر الأنسب حسب حاجتك.

3. التحضير قبل تثبيت Java في Ubuntu

أمور يجب التأكد منها قبل تثبيت Java

عملية تثبيت Java في Ubuntu ليست صعبة، لكن من المهم القيام ببعض التحضيرات المسبقة لتجنب المشاكل. خاصة إذا كنت تستخدم Ubuntu لأول مرة أو لديك برامج كثيرة مثبتة، يُنصح بمراجعة هذه الخطوات أولاً.

1. تحديث قائمة الحزم إلى أحدث إصدار

عند تثبيت البرامج على Ubuntu، يُستخدم نظام APT (أداة إدارة الحزم). إذا كانت قائمة الحزم قديمة، قد لا تجد حزمة Java أو قد تواجه مشاكل في الإصدارات.

لذلك، يجب أولاً تحديث المعلومات عبر الأمر التالي:

sudo apt update

سيؤدي هذا لتحديث قائمة الحزم ويتيح لك تثبيت أحدث إصدار.

2. التأكد من عدم وجود برامج متعارضة

في بعض الأحيان، قد يكون لديك إصدارات سابقة من Java (JDK قديم أو OpenJRE) والتي قد تتسبب بتعارض عند تثبيت الإصدار الجديد.

يمكنك التأكد من وجود Java عبر هذا الأمر:

java -version

إذا ظهرت أي نسخة، فهذا يعني أن Java موجودة مسبقاً. عندها يفضل إزالتها أولاً ثم تثبيت النسخة المطلوبة لتجنب المشاكل.

3. التأكد من امتلاك صلاحيات المسؤول (sudo)

تثبيت Java يتطلب تعديل النظام، لذا تحتاج صلاحية sudo. إذا كان المستخدم لا يملك هذه الصلاحية، ستظهر رسالة خطأ مثل:

المستخدم 'yourname' غير موجود في ملف sudoers. سيتم الإبلاغ عن هذا الحادث.

في هذه الحالة، اطلب من المسؤول تنفيذ العملية، أو استخدم حساب يملك صلاحيات root.

الخلاصة: التحضير يمنع المشاكل أثناء التثبيت

تثبيت Java سهل، لكن التأكد من تحديث النظام وفحص البيئة يقيك من الأخطاء. التحضير مهم خاصة للمبتدئين.

4. كيفية تثبيت Java على Ubuntu (الطريقة الأساسية)

4.1 تثبيت OpenJDK عبر APT

يستخدم Ubuntu أداة APT لإدارة البرمجيات. OpenJDK متوفر في المستودع الرسمي ويمكن تثبيته بالأوامر التالية:

تثبيت OpenJDK 11 (إصدار طويل الدعم ومستقر)

sudo apt install openjdk-11-jdk

تثبيت OpenJDK 17 (أحدث إصدار طويل الدعم)

sudo apt install openjdk-17-jdk

اختر رقم الإصدار المناسب لك (في 2025 ينصح عادةً بـ 11 أو 17).

استخدام APT يسهّل تثبيت جميع التبعيات المطلوبة تلقائياً.

4.2 التحقق من إصدار Java

بعد التثبيت، تحقق من أن Java تعمل بالأمر:

java -version

مثال نتيجة التنفيذ (OpenJDK 17):

openjdk version "17.0.9" 2024-10-17
OpenJDK Runtime Environment (build 17.0.9+8-Ubuntu)
OpenJDK 64-Bit Server VM (build 17.0.9+8-Ubuntu, mixed mode, sharing)

ظهور معلومات الإصدار يدل على نجاح التثبيت.

4.3 ملاحظات عند وجود أكثر من إصدار Java

يمكن تثبيت أكثر من إصدار Java على Ubuntu، لكن هناك إصدار واحد فقط يُستخدم كافتراضي.

لتغيير الإصدار الافتراضي استخدم:

sudo update-alternatives --config java

سيظهر لك قائمة بالإصدارات، اختر الرقم المناسب لتغيير الإصدار الافتراضي.

الخلاصة: ابدأ بتثبيت OpenJDK أولاً

للبدء مع Java على Ubuntu، يوصى بتثبيت OpenJDK 11 أو 17. الأمر بسيط عبر APT حتى للمبتدئين.

5. إعداد JAVA_HOME (متغير بيئة العمل)

ما هو JAVA_HOME؟

JAVA_HOME هو متغير بيئة تستخدمه التطبيقات لتحديد مكان تثبيت Java. كثير من أدوات التطوير والبناء (مثل Maven وGradle) تعتمد عليه لتشغيل Java.

لا يتم تعيينه تلقائياً بعد تثبيت Java، لذلك عليك ضبطه يدوياً.

كيفية معرفة مسار JAVA_HOME

لمعرفة المسار استخدم الأمر:

readlink -f $(which java)

مثال نتيجة التنفيذ:

/usr/lib/jvm/java-17-openjdk-amd64/bin/java

في هذه الحالة، قيمة JAVA_HOME هي كل المسار باستثناء bin/java:

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

خطوات تعيين JAVA_HOME

يُضاف المسار إلى ملف إعدادات shell مثل ~/.bashrc (أو ~/.zshrc لمن يستخدم zsh).

1. تحرير ملف bashrc

nano ~/.bashrc

أضف في نهاية الملف (استبدل المسار بما يناسبك):

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

2. تفعيل التغييرات

source ~/.bashrc

التأكد من إعداد JAVA_HOME

للتحقق من صحة الإعداد:

echo $JAVA_HOME

إذا ظهرت القيمة الصحيحة، فالإعداد تم بنجاح.

ملاحظة: تغيير JAVA_HOME عند استخدام أكثر من JDK

إذا بدلت إصدار Java، يجب تغيير قيمة JAVA_HOME لمسار الإصدار الجديد أيضاً.

الخلاصة: إعداد JAVA_HOME ضروري لبيئة التطوير

ضبط JAVA_HOME ضروري للكثير من أدوات التطوير، ويوفر استقرار بيئة العمل.

6. إدارة وتبديل عدة إصدارات من Java

لماذا تحتاج لأكثر من إصدار Java؟

بعض التطبيقات أو البيئات تتطلب إصداراً محدداً من Java (مثلاً Java 8 فقط أو Java 17). في Ubuntu، يمكنك تثبيت عدة إصدارات والتبديل بينها حسب الحاجة.

كيف تغيّر إصدار Java المستخدم؟

استخدم أمر update-alternatives لتغيير الإصدار الافتراضي.

الخطوة 1: تثبيت جميع الإصدارات المطلوبة

مثلاً، لتثبيت Java 8 و17:

sudo apt install openjdk-8-jdk
sudo apt install openjdk-17-jdk

الخطوة 2: عرض الإصدارات وتغييرها

sudo update-alternatives --config java

سيظهر لك قائمة، اختر الرقم المناسب.

تغيير إصدار javac (المترجم) أيضاً

sudo update-alternatives --config javac

غير إصدار javac بنفس طريقة java.

ملاحظة: تغيير JAVA_HOME إذا بدلت الإصدار

بعد التبديل، عدّل JAVA_HOME إذا لزم الأمر.

أخطاء شائعة وحلولها

  • تغيير Java لكن لم يتغير في بيئة IDE:
    → عدل إعدادات Java يدوياً في IDE مثل Eclipse أو IntelliJ.
  • java يعمل، لكن javac لا:
    → استخدم update-alternatives لتغيير javac أيضاً.

الخلاصة: مرونة التبديل تدعم إدارة مشاريع متعددة

Ubuntu يسهل إدارة عدة إصدارات من Java، وهو أمر مهم للمطورين الذين يعملون على مشاريع متعددة.

7. أخطاء شائعة وحلولها

الخطأ 1: “Unable to locate package openjdk-xx-jdk”

الوصف

عند محاولة تثبيت Java عبر APT، قد تظهر رسالة:

E: Unable to locate package openjdk-17-jdk

الأسباب

  • قائمة الحزم قديمة
  • خطأ في كتابة اسم الحزمة
  • الإصدار المطلوب غير متوفر لإصدار Ubuntu الحالي

الحلول

أولاً، حدّث قائمة الحزم:

sudo apt update

إذا استمرت المشكلة، تحقق من الإصدارات المتوفرة عبر:

apt search openjdk

الخطأ 2: “java: command not found”

الوصف

إذا ظهرت رسالة:

Command 'java' not found, but can be installed with:
sudo apt install default-jre

الأسباب

  • Java غير مثبت بشكل صحيح
  • PATH لا يحتوي على مسار Java

الحلول

ثبت Java بالأمر التالي:

sudo apt install default-jre

أو لإصدار محدد:

sudo apt install openjdk-17-jdk

ثم تحقق بالأمر:

java -version

الخطأ 3: لم يتم تفعيل JAVA_HOME بعد الإعداد

الوصف

بعد ضبط JAVA_HOME، الأمر echo $JAVA_HOME يعطي قيمة فارغة أو خاطئة.

الأسباب

  • لم يتم تنفيذ source ~/.bashrc بعد التعديل
  • خطأ في الكتابة أو تحديد المسار

الحلول

  1. راجع ملف الإعدادات:
nano ~/.bashrc
  1. نفذ التغييرات:
source ~/.bashrc
  1. تحقق من النتيجة:
echo $JAVA_HOME

الخطأ 4: java يعمل لكن javac لا يعمل

الوصف

عند محاولة الترجمة تظهر رسالة:

Command 'javac' not found

الأسباب

  • تم تثبيت JRE فقط، وليس JDK

الحلول

ثبت JDK بالأمر:

sudo apt install openjdk-17-jdk

ثم تحقق:

javac -version

الخطأ 5: لم يتغير إصدار Java رغم التبديل

الوصف

بعد استخدام update-alternatives لم يتغير الإصدار.

الأسباب

  • لم يتم التغيير لكل من java و javac
  • JAVA_HOME لم يتم تحديثه

الحلول

sudo update-alternatives --config java
sudo update-alternatives --config javac

ثم راجع إعداد JAVA_HOME.

الخلاصة: تعامل مع الأخطاء بهدوء

غالبية مشاكل إعداد Java في Ubuntu تعود لإعداد البيئة أو أخطاء في الكتابة. اقرأ رسائل الخطأ بعناية وتصرف بهدوء.

8. تثبيت Java عبر الواجهة الرسومية (للمبتدئين)

لا داعي للخوف من الطرفية

Ubuntu معروف بسهولة استخدامه، لكن البعض يتجنب الطرفية (Terminal). لحسن الحظ، يمكنك تثبيت Java بسهولة عبر الواجهة الرسومية باستخدام “Ubuntu Software”.

فيما يلي خطوات تثبيت Java (OpenJDK) عبر الواجهة الرسومية:

خطوات تثبيت Java عبر Ubuntu Software

الخطوة 1: افتح Ubuntu Software

  1. انقر على “النشاطات” أو من الشريط الجانبي، اختر “Ubuntu Software”.
  2. بعد الفتح، انقر على أيقونة البحث (عدسة مكبرة).

الخطوة 2: ابحث عن “OpenJDK”

اكتب “openjdk” في شريط البحث. ستظهر نتائج مثل “OpenJDK Java Runtime” أو “OpenJDK Java Development Kit”.

الخطوة 3: اختر الإصدار المناسب وثبته

  • اختر مثلاً “OpenJDK 11 Java Development Kit”.
  • في صفحة التفاصيل، انقر على زر “تثبيت”.
  • أدخل كلمة مرور Ubuntu الخاصة بك عند الطلب.

سيبدأ التثبيت مباشرةً ويستغرق بضع دقائق.

التحقق بعد التثبيت (حتى عبر الطرفية)

يمكنك التحقق عبر الأمر:

  1. افتح الطرفية واكتب java -version
  2. أو ببساطة جرّب فتح برنامج يتطلب Java مثل DBeaver أو Eclipse

ملاحظة: بعض الإصدارات متوفرة فقط عبر الطرفية

الإصدارات المتوفرة عبر الواجهة الرسومية ليست دائماً الأحدث، والتحكم المتقدم (مثل تعدد الإصدارات) يتطلب أحياناً استخدام الطرفية.

الخلاصة: الواجهة الرسومية خيار مناسب للمبتدئين

تثبيت Java في Ubuntu سهل عبر الواجهة الرسومية. جرب ذلك أولاً، ثم انتقل للطرفية عند الحاجة لتخصيص متقدم.

9. إعداد بيئة تطوير Java (إضافي)

ما الذي تحتاجه لتطوير Java؟

لتطوير Java تحتاج إلى:

النوعالدور
JDK (مجموعة تطوير Java)البيئة الأساسية للتطوير والتشغيل
محرر/بيئة تطوير متكاملة (IDE)كتابة الكود، الإكمال، وتصحيح الأخطاء
أداة بناء (Maven أو Gradle)إدارة التبعيات وبناء المشاريع

أفضل 3 أدوات تطوير Java (متوافقة مع Ubuntu)

1. Eclipse

  • بيئة تطوير متكاملة مشهورة ومستقرة
  • تدعم تطوير تطبيقات الويب وAndroid وSpring
  • إضافات كثيرة

طريقة التثبيت (باستخدام Snap):

sudo snap install eclipse --classic

2. IntelliJ IDEA

  • واجهة سهلة ووظائف قوية
  • نسخة Community مجانية ونسخة Professional مدفوعة
  • إكمال تلقائي ذكي وسهولة في الاستخدام

التثبيت عبر Snap:

sudo snap install intellij-idea-community --classic

3. Visual Studio Code (VS Code)

  • محرر خفيف وسريع، يدعم Java عبر الإضافات
  • مناسب لتطوير عدة لغات معاً (مثل Python وC)

طريقة التثبيت:

sudo snap install code --classic

بعد التثبيت، أضف إضافات Java مثل “Java Extension Pack”.

تثبيت أدوات البناء (Maven / Gradle)

أدوات البناء تساعد في إدارة التبعيات وبناء المشاريع:

تثبيت Maven:

sudo apt install maven

تثبيت Gradle:

sudo apt install gradle

الخلاصة: تطوير Java على Ubuntu احترافي وسهل

Ubuntu بيئة ممتازة لتطوير Java، مع دعم لأدوات متقدمة مثل Eclipse وIntelliJ وMaven وGradle.

10. الأسئلة الشائعة (FAQ)

س1. أيهما أختار: OpenJDK أم Oracle JDK؟

عادةً OpenJDK يكفي لمعظم الاستخدامات، فهو مدعوم رسمياً في Ubuntu ومجاني حتى للاستخدام التجاري.
أما Oracle JDK فقد يكون الأنسب للشركات التي تحتاج دعماً رسمياً أو ميزات إضافية، مع الانتباه للرخصة التجارية.

س2. كيف أثبت أحدث إصدار من Java في Ubuntu؟

قد لا يتوفر أحدث إصدار دائماً في المستودع الرسمي. يمكنك إما:

  • إضافة PPA (مثلاً: sudo add-apt-repository ppa:openjdk-r/ppa)
  • تحميله من موقع Oracle الرسمي

لكن غالباً ينصح باستخدام إصدارات LTS (مثل OpenJDK 11 أو 17) لمزيد من الاستقرار والأمان.

س3. هل يجب دائماً إعداد JAVA_HOME؟

إذا كنت فقط تشغّل تطبيقات Java، ليس ضرورياً. لكن يجب تعيينه عند:

  • إعداد بيئة تطوير (Eclipse, IntelliJ)
  • استخدام أدوات بناء (Maven, Gradle)
  • برامج أخرى تتطلب تحديد مسار Java

يفضل ضبطه مبكراً عند العمل بالتطوير.

س4. كيف أحذف Java من Ubuntu؟

لحذف Java التي ثبتها عبر APT:

sudo apt remove openjdk-17-jdk

إذا كان لديك عدة نسخ، احذف كل نسخة بالأمر المناسب وتحقق من الحذف عبر java -version.

س5. ماذا أفعل إذا لم يتغير إصدار Java بعد التبديل؟

إذا ثبتت عدة إصدارات ولم تتغير، استخدم:

sudo update-alternatives --config java
sudo update-alternatives --config javac

ولا تنس تحديث JAVA_HOME أيضاً.

س6. هل أستخدم الواجهة الرسومية أم الطرفية؟

للإعدادات البسيطة يكفي الواجهة الرسومية. للإعدادات المتقدمة أو تعدد الإصدارات، الطرفية أكثر مرونة.

الخلاصة: ارجع لهذه الصفحة عند الحاجة

تثبيت Java في Ubuntu سهل إذا اتبعت الخطوات الصحيحة. احتفظ بهذه الصفحة للرجوع إليها عند مواجهة أي مشكلة.

年収訴求