"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > إتقان مافن: ما وراء إدارة البناء

إتقان مافن: ما وراء إدارة البناء

تم النشر بتاريخ 2024-08-05
تصفح:565

Mastering Maven: Beyond Build Management

يُعرف Maven على نطاق واسع بأنه أداة قوية لأتمتة البناء، ولكنه أكثر من ذلك بكثير. إنها أداة شاملة لإدارة المشاريع تعمل على تبسيط عملية الإنشاء بأكملها وإدارة التبعية وإنشاء الوثائق. في هذا المنشور، سوف نستكشف الجوانب المختلفة لـ Maven ونفهم قدراتها بالتفصيل.

الميزات الرئيسية لـ Maven
1.بناء الجيل
2.إدارة التبعية
3.التوثيق

عند تنفيذ أوامر مثل mvn build أو mvn Publisher، يبحث Maven في ملف pom.xml، الذي يحتوي على جميع التكوينات، ويعمل وفقًا لذلك. دعونا نتعمق أكثر في بنية pom.xml وأهميتها.

ملف POM

``` xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0


com.examplemy-app1.0-SNAPSHOTjar1.81.85.2.8.RELEASEorg.springframeworkspring-core${spring.version}org.springframeworkspring-context${spring.version}junitjunit4.12testorg.apache.maven.pluginsmaven-compiler-plugin3.8.1${maven.compiler.source}${maven.compiler.target}org.apache.maven.pluginsmaven-surefire-plugin2.22.2centralhttps://repo.maven.apache.org/maven2releaseshttp://repo.mycompany.com/releasessnapshotshttp://repo.mycompany.com/snapshots

لنفك تشفير ملف POM:

** يتبع ملف pom.xml مخطط XML محددًا (محدد في xsi:schemaLocation:) والذي يضمن التزامه بالبنية الصحيحة، والتي يتحقق منها Maven. إليك مثال:


العناصر الرئيسية:

  • POM الأصلي:
    يحتوي كل ملف POM في Spring Boot على POM أصل. إذا لم يتم تحديد أصل، يصبح POM الفائق هو الأصل.

  • معرف المجموعة، ومعرف العنصر، والإصدار:
    تحدد هذه العناصر بشكل فريد المشروع في Maven Central.


com.examplemy-app1.0-SNAPSHOTjar
  • ملكيات: حدد أزواج القيمة والمفتاح التي يمكن الرجوع إليها في ملف pom.xml.

1.8

-

  • المستودعات: حدد مكان تنزيل التبعيات، عادةً من Maven Central.

centralhttps://repo.maven.apache.org/maven2

التبعيات: قم بإدراج تبعيات المشروع.


org.springframework.bootspring-boot-starter-web2.3.4.RELEASE
  • تكوين التكوين: يحدد عملية البناء ومراحله. لهذا نحتاج إلى فهم دورة حياة بناء المخضرم.

دورة حياة Maven Build

يتبع Maven دورة حياة بناء محددة تتكون من عدة مراحل:

  1. التحقق:
    التحقق من صحة هيكل المشروع.

  2. تجميع:
    يحول كود Java إلى bytecode (ملفات .class) ويضعها في المجلد/الهدف.

  3. امتحان:
    يقوم بتشغيل حالات الاختبار الموجودة في الدليل test/.

  4. طَرد:
    يُنشئ ملفات JAR/WAR من الكود الثانوي المُجمَّع ويخزنها في المجلد/الهدف.

  5. يؤكد:
    التحقق من سلامة الحزمة.

  6. ثَبَّتَ:
    تثبيت الحزمة في المستودع المحلي.

  7. نشر:

    تحميل الحزمة إلى مستودع بعيد.

تخصيص عملية البناء:
يوفر Maven المرونة لإضافة أهداف محددة في كل مرحلة من خلال العنصر. يمكنك أيضًا إنشاء المكونات الإضافية واستخدامها لتوسيع وظائف Maven.


org.apache.maven.pluginsmaven-compiler-plugin3.8.11.81.8

*التثبيت باستخدام المخضرم: *
يقوم بتثبيت ملف jar الذي أنشأناه في مرحلة الترجمة بعد إكمال الاختبار والتعبئة والتحقق.
هنا يقوم بإنشاء مجلد m2 يتم فيه الاحتفاظ بجميع التبعيات. يمكننا تغيير موقع المجلد هذا من settings.xml ضمن

النشر باستخدام Maven
يتم تحديد تكوين النشر داخل العنصر.


internal.repohttp://repo.mycompany.com/maven2

نصيحة: يمكننا تقديم بيانات الاعتماد في ملف settings.xml داخل مجلد .m2/repository.

يمكن أن يؤدي البقاء على اطلاع دائم بـ Maven وإتقان الفروق الدقيقة فيه إلى تعزيز إدارة المشروع بشكل كبير وبناء مهارات الأتمتة. تذكر أن Maven هو أكثر من مجرد أداة بناء، فهو مركز قيادة المشروع. تعمق أكثر، واستكشف المكونات الإضافية الجديدة، واستمر في التجربة. كلما زاد تفاعلنا مع Maven، أصبحت عملية التطوير لدينا أكثر قوة. استمر في تجاوز الحدود ودع Maven يتولى الباقي — فبعد كل شيء، يبدو الأمر مثل امتلاك سكين الجيش السويسري لتلبية احتياجات إدارة مشروعك!

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

بيان الافراج تم نشر هذه المقالة على: https://dev.to/mini2809/mastering-maven-beyond-build-management-6fd?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3