سؤال

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

الوحدة النمطية الوحيدة التي تظهر تحت رمز العلامة التجارية لديها هذا التكوين:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>nbm-maven-plugin</artifactId>
            <extensions>true</extensions>
            <configuration>
                <moduleType>autoload</moduleType>
                <codeNameBase>com.validation.manager.h2/1</codeNameBase>
                <publicPackages>
                    <publicPackage>org.h2.*</publicPackage>
                </publicPackages>
            </configuration>
        </plugin>

حيث يبدو الآخرون هكذا:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>nbm-maven-plugin</artifactId>
            <extensions>true</extensions>
            <configuration>
                <moduleType>eager</moduleType>
                <codeNameBase>com.validation.manager.ui/1</codeNameBase>
            </configuration>
        </plugin>

كما ترون ، إلى جانب نوع الوحدة ونوع الحزم العامة أم لا ، بالكاد هناك أي اختلافات.

التطبيق يعمل بشكل جيد ، هو مجرد شيء كان محيرًا لي.

أيه أفكار؟

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

المحلول

تحقق في ملف NBM الخاص بالوحدة النمطية التي يتم تعريف الكتلة في info/info.xml.

  • إذا كانت ذات قيمة خاطئة أو مفقودة ، فيجب عليك البحث في تكوين POM للوحدة لماذا الأمر كذلك. إما أنه محدد بشكل سيء في pom.xml أو في SRC/Main/NBM/module.xml المنخفض
  • قد تنتهي الوحدة النمطية في مجموعة "IDE" لأنك حددت المعلمة DefaultCluster في التطبيق الخاص بك

هذا هو سلوك الوحدات النمطية في NBM-Maven-Plugin الحالي. بالنسبة لحزم OSGI ، يكون السلوك أكثر مرونة لأن الجرار الحزمة لا تحتوي على معلومات عنقودية في الثنائي.

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