Maven-ear-plugin - باستثناء وحدات متعددة، على سبيل المثال.الجرار والحروب الخ

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

سؤال

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

  <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-ear-plugin</artifactId>
        <version>2.4.1</version>
        <configuration>
            <jboss>
                <version>5</version>
            </jboss>
            <modules>
                <!-- Include the templatecontroller.jar inside the ear -->
                    <jarModule>
                        <groupId>com.kewill.kdm</groupId>
                        <artifactId>templatecontroller</artifactId>
                        <bundleFileName>templatecontroller.jar</bundleFileName>
                        <includeInApplicationXml>true</includeInApplicationXml>
                    </jarModule>
                    <!-- Exclude the following classes from the ear -->
                    <jarModule>
                       <groupId>javax.activation</groupId>
                       <artifactId>activation</artifactId>
                       <excluded>true</excluded>
                    </jarModule>
                    <jarModule>
                   <groupId>antlr</groupId>
                   <artifactId>antlr</artifactId>
                   <excluded>true</excluded>
                </jarModule>
                ... declare multiple excludes
                <security>
                    <security-role id="SecurityRole_1234">
                        <role-name>admin</role-name>
                    </security-role>
                </security>
            </configuration>
        </plugin>
    </plugins>

يعد هذا النهج جيدًا تمامًا مع المشاريع الصغيرة حيث يمكنك استبعاد 4-5 وحدات.ومع ذلك، لدي في مشروعي أكثر من 30 وقد بدأنا المشروع للتو، لذا فمن المرجح أن ينمو هذا المشروع مع توسعه.

إلى جانب الإعلان صراحةً عن استبعاد عبارات لكل وحدة، هل من الممكن استخدام أحرف البدل أو استبعاد جميع علامات التبعيات المخضرمة لتضمين تلك الوحدات التي أعلنها فقط واستبعاد كل شيء آخر؟هل أي شخص على علم بحل أكثر أناقة؟

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

المحلول

إلى جانب الإعلان بوضوح عن عبارات الاستبعاد لكل وحدة، هل من الممكن استخدام أحرف البدل أو استبعاد جميع علامات التبعيات المخضرمة لتضمين فقط تلك الوحدات التي أعلنها واستبعاد كل شيء آخر؟

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

  • ربما يمكنك إعلان أن بعضها اختياري إذا كانت تابعة لـ لك القطع الأثرية لتجنب استعادتها بشكل متعد.
  • ربما يمكنك وضع علامة على بعض التبعيات على أنها "مقدمة" (ووضعها في pom الأصلي، وإعادة إعلان ما تريده فقط في POM الخاص بالأذن).

من الصعب الإجابة دون رؤية الصورة كاملة بالرغم من ذلك.

نصائح أخرى

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

والأفضل من ذلك، هل يمكن أن تقدم موجو لفريق مخضرم (!)

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

وآمل أن يساعد هذا!

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