سؤال

وبلدي المشروع يتضمن ملف جرة لهو مدرج ك تبعية متعدية.

ولكن، لقد تحققت ليس فقط أن لا حاجة إليها ولكنه يسبب مشاكل لفئة داخل الظلال ملفات جرة فئة أحتاج في ملف جرة أخرى.

وكيف أترك ملف جرة واحد من وجهة نظري تبعيات متعدية؟

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

المحلول

ويمكنك استبعاد تبعية على النحو التالي:

        <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring</artifactId>
                <version>2.5.6</version>
                <exclusions>
                        <exclusion>
                                <groupId>commons-logging</groupId>
                                <artifactId>commons-logging</artifactId>
                        </exclusion>
                </exclusions>
        </dependency>

نصائح أخرى

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

    <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring</artifactId>
            <version>2.5.6</version>
    </dependency>
    <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
            <scope>provided</scope>
    </dependency>

والآثار الجانبية: يجب تحديد في نسخة من القطع الأثرية إلى أن-تجاهلها، وسيتم استردادها POM لها في بناء الزمن؛ هذا ليس هو الحال مع استثناءات العادية. وهذا قد يكون مشكلة بالنسبة لك إذا قمت بتشغيل الخاص بك مستودع مخضرم الخاص خلف جدار حماية.

ويمكنك القيام بذلك عن طريق استبعاد صراحة قطعة أثرية إشكالية. خذ الاعتماد الذي يتضمن المشكلة ووضع علامة عليه سيتم استبعادها:

ومن مخضرم موقع :

<dependency>
  <groupId>group-a</groupId>
  <artifactId>artifact-a</artifactId>
  <version>1.0</version>
  <exclusions>
    <exclusion>
      <groupId>group-c</groupId>
      <artifactId>excluded-artifact</artifactId>
    </exclusion>
  </exclusions>
</dependency>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top