لماذا تفشل الاختبارات الخاصة بي عند الترحيل من Maven2 إلى Buildr؟

StackOverflow https://stackoverflow.com/questions/1165752

سؤال

لدي مشروع Java Maven2 مباشرة (نظام Requaying JMS). بعد أن أصدرنا الإصدار الأول، وجدنا أننا أمضينا المزيد من الوقت في تكوين مافن من الترميز في الواقع.

بالنسبة للإصدار التالي، أردنا تنظيف عملية الإنشاء واقترح شخص ما الترحيل إلى باني. لذلك كنت مكلف بالقيام بذلك.

أقوم بإعداد Buildr (1.3.4) وفقا للوثائق على موقعها الإلكتروني. ثم من جذر المشروع كتبته الأمر BuildR ثم أبلغ Buildr لإنشاء ملف Build يعتمد على POM.XML الخاص بي. التي تمت معالجتها بشكل جيد وتجميع جميع التعليمات البرمجية. كلها كانت مرق حتى بدأ Buildr في تشغيل الاختبارات. هنا هو ouput:

Test framework error: taskdef class org.apache.tools.ant.taskdefs.optional.junit.JUnitTask cannot be found

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

هل رأى اى شخص هذا من قبل؟


تحديث

أنا موجود جرة غير اختياري من النمل على مستودع مخيف. بما في ذلك ذلك في الاختبار الخاص بي. مع خيارات لم تحل المشكلة.

تشغيل أمر Buildr مع - احتراس يعطي هذه المعلومات الإضافية ...

Tests failed!
/pathtoruby/buildr-1.3.4/lib/buildr/core/test.rb:455:in `run_tests'
/pathtoruby/buildr-1.3.4/lib/buildr/core/test.rb:199:in `initialize'
هل كانت مفيدة؟

المحلول

وجدت المشكلة ... على ما يبدو هناك Ant-Junit.Jar اللازمة ولكن لأي سبب من الأسباب في مستودعي المحلي، كان مملوكا للجذر وليس حساب المستخدم المحلي (نظام OSX). لذلك لم يكن في متناول buildr. قمت بحذف العناصر من مستودعي المحلي و Reran Buildr (قمت بتنزيل العناصر اللازمة).


تحديث

كما تسبب هذا في عدد قليل من القضايا الأخرى. يبدو أن عددا قليلا من العناصر الأخرى في مستودعي المحلي لها أذونات غريبة. انتهى بي الأمر فقط أرشفة مستودعي والسماح بإعادة بناءها. هذا حل كل مشكلاتي. لدي الآن ملف بناء لطيف هو 25 خطوط من التعليمات البرمجية مقارنة مع ملف Pom.xml السابق الذي كان أكثر من 100 سطر.

نصائح أخرى

تحصل على هذا الخطأ لأن Junittask ليس في ClassPath. لست معتادا جدا على Buildr، لذلك لا يمكن القول إذا كان مطلوبا بالنسبة لك تحديد الجرار Junit أو لا، ولكن إذا كان Buildr يستخدم النظام Classpath، فحاول إضافة Junit لذلك ومعرفة ما يحدث.

بمجرد تأكيد إنشاء Builds الخاص بك مع Junit اخترق الدخول إلى ClassPath، يمكنك بعد ذلك محاولة تغيير تغيير التكوين الخاص بك حتى يتم تشغيله كما توقعت، أو اتركه كما هو.

يمكنك نشر الإشارة إلى الجزء ذي الصلة من الوثائق؟ لم أر أي شيء (في القراءة القصيرة الخاصة بي للموقع) الذي يقول إن العناصر المطلوبة مدرجة.

هل من الممكن عدم تنزيل جميع الأحجار الكريمة؟ إذا قمت بتشغيل "GEM Update --System" لتحديث Ruby، ثم "GEM Update Buildr" يمكنك التأكد من تثبيت التبعيات المطلوبة.

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