java - بناء أمر من مشروع مافن متعدد الوسائط؟




maven build (2)

أنا أعيش هذه المسألة في الآونة الأخيرة مع Centos 7. لقد قمت بتحديث مخضرم إلى 3.5.3 من 3.0.5 وقد تم حل هذه المشكلة. إذا كان لدى أي شخص هذه المشكلة جرب ذلك أولاً.

الوضع ، لدي اثنين من المشاريع المتعددة Maven مع نفس الهيكل:

Parent
    - Module 1
    - Module 2

عندما أقوم بإنشاء المشروع 1 ، أرى أن ذلك الأبن مبني أولاً (الترتيب هو parent-> module1-> module2 ). ومع ذلك ، بالنسبة للمشروع 2 ، يتم إنشاء الأصل في النهاية (الترتيب هو module1-> module2-> parent ). لماذا يكون للمشروعين أوامر بناء مختلفة؟ علاوة على ذلك ، كيف يمكنني التحكم يدويًا في أمر البناء؟

التحديث 1:
كلا المشروعين الرئيسيين هما مشروعات POM بسيطة بدون كود المصدر ، لذلك لا يمكنني شرح ترتيب البناء حسب الرسم البياني للتبعية.

التحديث 2:
POMs الأم هي نفسها باستثناء GAV وأسماء الوحدة النمطية التابعة:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>parent-group-id</groupId>
    <artifactId>parent-artifact-id</artifactId>
    <version>parent-version</version>
    <packaging>pom</packaging>
    <name>parent-name</name>
    <modules>
        <module>module-1</module>
        <module>module-2</module>
    </modules>
</project>

على مستوى عالٍ ، يستند ترتيب البناء إلى نوع طوبولوجي من الرسم البياني التبعية الوحدة النمطية.

تحرير: سؤال بالنسبة لك. أتفهم أن المشروع 1 يحتوي على وحدتين ، وكذلك المشروع 2. ولكن هل تعلن الوحدات في المشروع 2 بوضوح عن "الأصل" كأحد الوالدين؟ أفكر في أن وحداتك في مشروعك 1 قد تعلن صراحةً أن الوالد الأصل ، وأن وحدات المشروع 2 لا تفعل ذلك. مما يعني أن المشروع "الأم" 2 ليس حقا الأم على الإطلاق ، وبالتالي لا يجب أن يتم بناؤه قبل الوحدات. هذا هو تخميني على أي حال.





multi-module