سؤال

لقد خرجت Maven 3 Beta منذ أسبوعين وأريد فقط الحصول على وجهات نظركم على قائمة الميزات لـ Maven 3. لأنه تم إضافة ميزتين رئيسيتين فقط

  1. التنفيذ الموازي للمشروع في دورة حياة البناء
  2. دورة حياة مخصصة

كل شيء آخر يبدو وكأنه إصلاح الأخطاء أو تحسن بسيط. فما رأيك؟ هل سيستحق مافن 3 الانتظار؟

هل كانت مفيدة؟

المحلول

ما الجديد في Maven 3؟ إليك مجموعة صغيرة لما يمكنك العثور عليه حول الشبكة.

  • التوافق - Maven 3 متوافق للخلف ، وهذا هو الى ابعد حد مهم (خاصة بالنسبة لأولئك الذين عانوا من Maven 1 إلى Maven 2 Transition).
  • عناصر الوالدين بدون إصدار - ستقوم Maven 3 بإزالة الحاجة إلى تحديد الإصدار الأصل في الوحدات النمطية الفرعية. هذه رائع (في Maven 3.1).
  • Mixins - لتكوين POM (في Maven 3.1 AFAIK).
  • تنسيق XML POM باستخدام السمات - يمكنك استخدام السمات بدلاً من العناصر.
  • polyglot maven - يمكنك كتابة ملفات POM الخاصة بك الآن بلغات مختلفة (أنا شخصياً لست منزعجًا من تنسيق XML ، لذا لست متأكدًا من أنني سأستخدم هذا كثيرًا).
  • نقاط الامتدادات - لتزيين دورة الحياة أو الإضافات (لربط السلوك بدلاً من توسيع المكونات الإضافية).
  • دورة حياة الاستعلام - فصل خطط التنفيذ والتنفيذ.
  • التغييرات في البرنامج المساعد - API - هذا أكثر استهدافًا لمطوري الإضافات (التعليقات التوضيحية بدلاً من علامات Javadoc ، نقاط التمديد ، دورة حياة Queryable).
  • خطأ أفضل ونزاهة الإبلاغ - الأخطاء أكثر وضوحًا وترتبط بـ Maven 3 Wiki للحصول على شرح مفصل. سوف يستمتع المستخدمون بهذا.
  • Mercury - إعادة كتابة كاملة لنظام دقة القطع الأثرية (وهو الآن منتج مخصص) في الواقع ، يستخدم Maven 3 الأثير بدلا من الزئبق.
  • Maven inmbedder - هذا رائع بالنسبة إلى IDEs وأدوات البناء (التي يمكن أن "الاستماع" إلى عملية الإنشاء).
  • دعم التصميم الإضافي - مفيد بشكل خاص لـ M2Eclipse (زيادة الأداء الكبير).
  • الموقع والإبلاغ المستخرج من Maven Core - الموقع لا يعمل بعد (سيتم إصلاحه للإصدار النهائي), ، لا يوجد تقارير (لكنك مدعوون لصالح أدوات الجودة الخارجية مثل السونار).
  • قذيفة مافن - بيئة تنفيذ محسنة (شل Maven هي رائع).

لتلخيص ، أنت لست مخطئًا تمامًا ، لا توجد العديد من التغييرات على السطح (على الرغم من أنني أستمتع حقًا بالإبلاغ عن خطأ أفضل ولا يمكنني انتظار الأشياء الوالدية التي لا تتبع الإصدار). لكن التغييرات تحت غطاء محرك السيارة تجعل Maven 3 أسرع بكثير وهذا ضخم. وأتوقع أن تحدث ابتكارات رائعة مع إمكانيات جديدة مقدمة (لم يأت بعد).

في النهاية ، فإن تحسين الأداء يكفي بالفعل لجعله يستحقني (البناء في وقت أقل قيمة للغاية) وأشياء أخرى هي مكافآت. وبما أنني لا أستخدم البرنامج المساعد على نطاق واسع ، فأنا أستخدم بالفعل Maven 3 لأكثر من 4 أشهر على بعض من بنياتي وأنا أكثر من سعيد بها.

أنظر أيضا

نصائح أخرى

كانت فكرة Maven 3 هي استبدال Maven 2 دون أي مشاكل ... يوجد حاليًا بعض (الموقع على وجه الخصوص). أود أن أقترح اختبار مشاريع Maven 2 الحالية الحالية مع Maven 3 لمعرفة ما إذا كانت بعض المشكلات تحدث. داخليًا ، تم إعادة تمثيل الرمز الكامل وما إلى ذلك لإجراء تحسينات جديدة. إزالة بعض الأجزاء من النواة (مثل توليد الموقع وما إلى ذلك).

لا ، إنه غير متوافق كما يقول Matrix. هناك الكثير من غير التوافق بين 2 و 3 وهناك سلوك يشير إلى الصفحة. إذا كنت تعمل في مشاريع المؤسسات في شركة ، فيمكنك التأكد من أنك ستواجه هذه المشكلات.

بقدر ما يكون Perfomance جيدًا إذا قمت بتشغيل Enterprise لا يتم إنشاء رمز من 10K-100K ... ماذا عن System 1.5 مليون سطر؟ هذا أكثر شيوعًا في المؤسسة. إذا كان برنامجك يبني من ساعتين إلى 4 ساعات وما زلت بحاجة إلى تكامل مستمر ، فستبحث في البناء والاختبار المتوازيين. يأتي Maven 3 في متناول يدي في تلك المرحلة ... ولكن في هذه المرحلة ، من غير المقبول أن يكون دقة/ClassPath من الأشجار مختلفة اعتمادًا على الهدف (التبعية: تستخدم Tree آلية قديمة بينما تعتمد أهداف البناء العادية على Aether). إنه يذكرنا بمشكلات IVY/ANT عندما لا يمكن للمرء الاعتماد على التحقق من ClassPath قبل حزم البرمجيات للنشر (ليس لديك ريبو Maven المحلي ، هل أنت؟ ... لكنك لا تزال بحاجة إلى إجراء عمليات تدقيق للبرامج ، أليس كذلك؟)

قاموا بإزالة خيار "-r" واستبدلوه بنظام معقد للغاية.

يشجع Maven نسخ/لصق POMs. كنت آمل أن يقوموا بإصلاح ذلك في 3.0. أسقطوا ميزة "mixins" حتى Maven 3.1.

بخلاف أداء البناء وعدد قليل من إصلاحات الأخطاء البسيطة ، فإنه لا يستحق حقًا المتاعب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top