البرمجة

تضمين تبعيات Maven في ملف JAR

عند استخدام برنامج IntelliJ IDEA مع Maven لإنشاء تطبيق Java بسيط، يمكن واجهة مشكلة عدم تضمين تبعيات المشروع في ملف JAR النهائي. هذا يؤدي إلى حدوث خطأ “java.lang.NoClassDefFoundError” عند محاولة تشغيل التطبيق من خارج بيئة التطوير.

لحل هذه المشكلة وتضمين التبعيات في ملف JAR، يمكن اتباع الخطوات التالية:

  1. استخدام Maven Shade Plugin: يمكن استخدام هذا البرنامج المساعد لدمج التبعيات في ملف JAR نهائي. يتيح لك ذلك تشغيل التطبيق بسهولة من خلال توزيع ملف JAR واحد.

  2. تكوين Maven Shade Plugin: يجب إضافة Maven Shade Plugin إلى ملف “pom.xml” الخاص بك وتكوينه بحيث يقوم بتضمين التبعيات في الملف النهائي.

    على سبيل المثال، يمكنك إضافة القطع التالية إلى قسم “build/plugins” في ملف “pom.xml”:

    xml
    <plugin> <groupId>org.apache.maven.pluginsgroupId> <artifactId>maven-shade-pluginartifactId> <version>3.2.4version> <configuration> <createDependencyReducedPom>falsecreateDependencyReducedPom> <filters> <filter> <artifact>jline:jlineartifact> <excludes> <exclude>META-INF/*.SFexclude> <exclude>META-INF/*.DSAexclude> <exclude>META-INF/*.RSAexclude> excludes> filter> filters> configuration> <executions> <execution> <phase>packagephase> <goals> <goal>shadegoal> goals> execution> executions> plugin>
  3. بناء مشروع Maven: بعد تكوين Maven Shade Plugin، قم بإعادة بناء مشروع Maven الخاص بك. يجب أن يتم إنشاء ملف JAR نهائي يحتوي على جميع التبعيات اللازمة.

  4. تشغيل التطبيق: بعد إنشاء ملف JAR النهائي، يمكنك تشغيل التطبيق من خلال تنفيذ الأمر:

    java -jar myproject.jar

مع استخدام Maven Shade Plugin، يمكنك الآن تضمين التبعيات بشكل صحيح في ملف JAR النهائي الخاص بتطبيقك وتشغيله بسهولة في أي بيئة.

المزيد من المعلومات

بالطبع، يُمكن تعميق الفهم بمزيد من التفاصيل والإضافات إلى المقالة. دعني أكمل لك المقالة بشكل يساعد في فهم أعمق للعملية:

  1. فهم Maven Shade Plugin: يقوم Maven Shade Plugin بدمج التبعيات (المكتبات والملفات الأخرى المعتمدة) في ملف JAR نهائي. يتم ذلك عن طريق إعادة تجميع وإعادة تعبئة المشروع بحيث يتم تضمين التبعيات داخل الملف النهائي.

  2. تكوين Maven Shade Plugin بالتفصيل: يُمكن تكوين Maven Shade Plugin لتنفيذ مهام محددة أثناء عملية البناء. في الشيفرة المُعطاة، يتم تحديد مرحلة التنفيذ (في هذه الحالة، “package”)، وتحديد الأهداف المطلوبة لتحقيقها (في هذه الحالة، “shade”).

  3. تفاصيل ملف التكوين: في ملف التكوين، يمكن إضافة استثناءات للتحكم في العناصر التي تُضاف أو تُستبعد من الملف النهائي. يُمكن أيضًا تحديد الإصدار المطلوب للمكتبات المُضمَّنة وإزالة المعلومات الزائدة من ملف JAR مثل ملفات META-INF.

  4. أهمية إعادة بناء المشروع: بعد تكوين Maven Shade Plugin، يُجب إعادة بناء مشروع Maven باستخدام الأمر “mvn package” لتنفيذ عملية البناء بما في ذلك عملية تجميع وتعبئة الملف JAR النهائي.

  5. التحقق من ملف JAR النهائي: بعد البناء الناجح، يُمكن التحقق من أن ملف JAR النهائي يحتوي على جميع التبعيات المطلوبة. يُمكن ذلك بفتح الملف JAR باستخدام برنامج فك الضغط أو أداة مشابهة والتأكد من وجود الملفات والمجلدات الضرورية.

  6. تشغيل التطبيق: بعد التحقق من أن كل التبعيات مُضمّنة في الملف النهائي، يُمكن تشغيل التطبيق بسهولة باستخدام الأمر “java -jar myproject.jar” في سطر الأوامر.

مع تطبيق هذه الخطوات وفهم عملية تضمين التبعيات في ملف JAR باستخدام Maven Shade Plugin، يمكن للمطورين إنشاء تطبيقات Java قابلة للتوزيع بسهولة وتشغيلها في أي بيئة بما في ذلك البيئات التي لا تحتوي على بيئة تشغيلية Java مثبتة مسبقًا.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر