मैं मल्टी मेवेन प्रोजेक्ट में काम कर रहा हूं जो निम्नलिखित मॉड्यूल में अलग है:

  • आराम परत
  • सेवा परत
  • भंडार परत

मैं एक और मॉड्यूल जोड़ना चाहता हूं जिसे व्यू लेयर, एप्लिकेशन का ui कहा जाता है। एकमात्र समस्या यह है कि ui कोणीय है, और मुझे इस परियोजना के लिए मेवेन मॉड्यूल में कोणीय ऐप को एकीकृत करने के लिए किसी भी तरह की आवश्यकता है।

मैंने व्यू लेयर नामक एक नया मेवेन मॉड्यूल बनाया है। निम्नलिखित प्लगइन को जोड़ा गया यह नीचे की तरह दृश्य परत का मावेन मॉड्यूल पोम है:

<plugin>
    <groupId>com.github.eirslett</groupId>
    <artifactId>frontend-maven-plugin</artifactId>
    <version>1.3</version>
    <configuration>
        <nodeVersion>v8.11.3</nodeVersion>
        <npmVersion>6.3.0</npmVersion>
        <workingDirectory>src/main/web/</workingDirectory>
    </configuration>
    <executions>
        <execution>
            <id>install node and npm</id>
            <goals>
                <goal>install-node-and-npm</goal>
            </goals>
        </execution>
        <execution>
            <id>npm install</id>
            <goals>
                <goal>npm</goal>
            </goals>
        </execution>
        <execution>
            <id>npm run build</id>
            <goals>
                <goal>npm</goal>
            </goals>
            <configuration>
                <arguments>run build</arguments>
            </configuration>
        </execution>
        <execution>
            <id>prod</id>
            <goals>
                <goal>npm</goal>
            </goals>
            <configuration>
                <arguments>run-script build</arguments>
            </configuration>
            <phase>generate-resources</phase>
        </execution>
    </executions>
</plugin>

और व्यू मॉड्यूल के src/main/web निर्देशिका के अंदर कोणीय क्ली के साथ एक कोणीय ऐप उत्पन्न किया। दुर्भाग्य से बिल्ड विफल हो रहा है, यह package.json नहीं ढूंढ रहा है।

किसी भी तरह की सहायता का स्वागत है।

सादर, डार्थ बाटो।

-1
user14005288 29 जुलाई 2020, 14:46

2 जवाब

सबसे बढ़िया उत्तर

मैं इसे एक बहु मेवेन प्रोजेक्ट में एक मेवेन मॉड्यूल के रूप में कोणीय जोड़ने के लिए करता हूं।

पहली बात मैं मूलरूप चयन को छोड़ कर एक साधारण मावेन मॉड्यूल जोड़ता हूं। मैं निम्नलिखित विन्यास जोड़कर पोम को संशोधित करता हूं:

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <maven.deploy.skip>true</maven.deploy.skip>
    </properties>


    <build>
        <plugins>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>npm install</id>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <phase>install</phase>
                        <configuration>
                            <executable>npm</executable>
                            <arguments>
                                <argument>install</argument>
                            </arguments>
                        </configuration>
                    </execution>
                    <execution>
                        <id>npm build</id>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <phase>install</phase>
                        <configuration>
                            <executable>npm</executable>
                            <arguments>
                                <argument>run</argument>
                                <argument>build</argument>
                            </arguments>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

        </plugins>
    </build>

इसके बाद, मैं केवल पोम फ़ाइल को छोड़कर मेरे द्वारा बनाए गए मॉड्यूल की सभी सामग्री को हटा देता हूं। जब हम मेवेन मॉड्यूल बनाते हैं तो मैं src फ़ोल्डर, टेस्ट फ़ोल्डर इत्यादि हटा देता हूं।

उसके बाद, मैं कोणीय सीएलआई का उपयोग करके एक नया कोणीय ऐप बना देता हूं। मैं मेवेन मॉड्यूल प्रोजेक्ट में कोणीय ऐप (src, dist, node_modules, आदि) की सभी सामग्री को स्थानांतरित करता हूं।

अंत में, यह जांचने के लिए कि सबकुछ ठीक है या नहीं, मैं यह देखने के लिए कि सब कुछ सफलतापूर्वक संकलित करता है या नहीं, मैं माता-पिता मेवेन प्रोजेक्ट में एक मेवेन बिल्ड चलाता हूं।

0
Rando Shtishi 29 जुलाई 2020, 14:58

मुझे लगता है तुम्हारा

 <workingDirectory>src/main/web/</workingDirectory>

सही नहीं है क्योंकि आपने मॉड्यूल का नाम नहीं जोड़ा है

इस तरह

<workingDirectory>frontend-module/src/main/web/</workingDirectory>

यही कारण है कि यह आपका पैकेज नहीं प्राप्त कर सकता है।json

0
gaetan TEMATE 29 जुलाई 2020, 17:32