سؤال

هل يعرف أحد كيف أحدد في Ivy شيئًا مثل المرآة/المرآة في Maven؟أنا أعمل مع وكيل Maven محلي (Nexus) وأحتاج إلى الأداة لتحديد أي من المستودعات الأصلية يجب أن يصل إليها وكيل Nexus.

في Maven أفعل ببساطة:

<mirrors>
  <mirror>
    <id>central-mirror</id>
    <mirrorOf>central</mirrorOf>
    <url>http://localhost:8081/content/repositories/central</url>
  </mirror>
</mirrors>

لكن لا يمكنني العثور على هذا النوع من الخيارات في Ivy.

نصائح أخرى

تحتاج إلى إنشاء محلل عام يفعل ما تريد (مزيد من التفاصيل @ مستندات اللبلاب)

احفظ المقتطف التالي بشكل أساسي ضمن $USERHOME/.ivy2/ivysettings-public.xml.هذا ينبغي أن تفعل خدعة.

<ivysettings> 
  <resolvers> 
    <ibiblio name="public" m2compatible="true" root="http://localhost:8081/content/groups/public"/> 
  </resolvers> 
</ivysettings>
  • يحتوي التثبيت القياسي غير المعدل على "nexus" في عنوان URL!
  • إذا كنت بحاجة إلى نشر العناصر، فأعتقد أن الحل هو القيام بشيء مشابه للمحلل المشترك (انظر الرابط إلى المستندات أعلاه)، لكنني لم أحاول.
  • لقد قمت بتغيير عنوان URL المحلي الخاص بك للتوافق مع "المحتوى/المجموعات/العامة" القياسي وهو أفضل لأنه في جزء الإعدادات المخضرمة أعلاه، تقوم بتمرير جميع المكالمات من خلال المرآة، وليس فقط تلك التي يتم إجراؤها إلى المركز.ما عليك سوى إضافة أي مستودعات إضافية إلى تلك المجموعة في Nexus UI عند ظهورها وستكون بخير.
  • إذا قام مشروعك بتحميل إعدادات ivysettings الخاصة به والتي لا تحترم الإعدادات الافتراضية، فلن يتم تحميل هذه الإعدادات وستعود مرة أخرى إلى الصفر :(

وهذه هي الطريقة التي جعلت من العمل (لم الجواب منHeron لا تعمل بالنسبة لي):

وإنشاء ملف مع هذا المحتوى:

<ivysettings>
  <settings defaultResolver="default"/>
  <property name="m2-pattern" value="${user.home}/.m2/repository/[organisation]/[module]/[revision]/[module]-[revision](-[classifier]).[ext]" override="false" />
  <resolvers>
    <chain name="default">
        <ibiblio name="public" m2compatible="true" root="http://nexus-server:8081/nexus/content/groups/public"/>
    </chain>
  </resolvers>
</ivysettings>

وRefere إليه من بناء النمل:

<ivy:settings file="/Users/wdb/.ivy2/ivysettings-public.xml" />

واللبلاب الآن قادرة على حل تبعيات من وجهة نظري مستودع العلاقة.

ولقد فعلت الشيء نفسه ولكن مع Archiva، ما هي مشابهة جدا. لديك فقط ليعلن في سلسلة جديدة ما يلي:

<chain name="private">
<url name="archiva" m2compatible="true">
  <ivy pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/ivy.xml" /> 
  <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" /> 
  <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact].[ext]" /> 
  </url>
</chain>

وArchiva يدير مخضرم 2 المستودعات (التحف مع بيانات التعريف مخضرم) لم يكن هناك عادة اللبلاب بيانات التعريف (ivy.xml). وتخطيط مخضرم 2 هو [تنظيم] / [وحدة] / [مراجعة] / [قطعة أثرية] - [مراجعة] [تحويلة]

ونحن لا نملك إلا أن تقديم المعلومات التالية

<url name="archiva" m2compatible="true">
  <artifact pattern="http://..../archiva/repository/internal/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" /> 
  </url>
</chain>

أو

  <settings defaultResolver="archiva"/>
  <resolvers>
<ibiblio name="archiva" m2compatible="true" root="http://.../archiva/repository/internal/[organization]/[module]/[revision]/[artifact]-[revision].[ext]"/>
  </resolvers>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top