سؤال

لدي ميزة وأريد تغيير معرفها.ومع ذلك، فإن هذا يجعل من المستحيل تحديث التثبيت الحالي، وإليك السبب:

  1. افترض أن الميزة F1 في الإصدار 1.0 تتكون من البرنامج المساعد A في الإصدار 1.0.
  2. الآن، أريد الحصول على ميزة F2 في الإصدار 1.1 والتي تستخدم المكون الإضافي A في الإصدار 1.1.
  3. عند تثبيت F2، ظهرت لي رسالة خطأ - بأن لدي ميزة F1 بالفعل والتي تتطلب المكون الإضافي A في الإصدار 1.0، وبالتالي، سيؤدي تثبيت المكون الإضافي A 1.1 إلى إلغاء تلك التبعية.

أنا أبحث عن طريقة للإشارة إلى أن F2 يحل محل F1.كيف أقوم بذلك؟

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

المحلول

أفترض أنك تستخدم p2.

عند تصدير/إنشاء الميزة الخاصة بك باستخدام p2 البيانات الوصفية , ، يحتوي content.xml (.jar) الناتج على شيء مثل ما يلي:

<unit id='f.feature.group' version='1.0.0' singleton='false'>
  <update id='f.feature.group' range='[0.0.0,1.0.0)' severity='0'/>
  ...
</unit>

هذا <update> يحدد العنصر الإصدارات السابقة من الميزة التي سيتم تحديثها هذا.تقوم أدوات إنشاء البيانات التعريفية الحالية بتعيين هذا كما ترى أعلاه.

لقد قمت بإنشاء ميزة "f" تتضمن المكون الإضافي "A 1.0.0" وتم تصديرها مع البيانات الوصفية وقمت بتثبيت هذه الميزة في Eclipse الخاص بي.ثم قمت بإنشاء ميزة "g" تتضمن المكون الإضافي "A 2.0.0".لقد قمت بتصدير هذا مرة أخرى إلى نفس المستودع.ثم ذهبت وقمت بتحرير ملف content.xml يدويًا، وغيرت:

<unit id='g.feature.group' version='1.0.0.200907061120' singleton='false'>
  <update id='g.feature.group' range='[0.0.0,1.0.0.200907061120)' severity='0'/>

ل

<unit id='g.feature.group' version='1.0.0.200907061120' singleton='false'>
  <update id='f.feature.group' range='[0.0.0,1.0.0.200907061120)' severity='0'/>

ثم في الكسوف الخاص بي، قمت بإجراء "التحقق من وجود تحديثات"، ووجدت "g" كتحديث لـ "f" السابق وقمت بالترقية.(قد تحتاج إلى فرض إعادة تحميل المستودع لالتقاط التغييرات، ومن المفترض أن يؤدي ذلك إجراء "اختبار اتصال" في صفحة تفضيلات مواقع البرامج المتاحة).

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

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