Структура мультимодульных проектов Maven хорошо отображалась в представлении Eclipse, но структура проекта отображалась иначе, без отдельного субмодуля - PullRequest
0 голосов
/ 31 марта 2020

Я новичок в мультимодульном проекте Maven, и я создал структуру проекта с 1 родительским модулем и 2 вспомогательными модулями. У всех там свой отдельный пом. xml. Оба подмодуля зависят от родительского модуля и независимы друг от друга. В моем представлении Eclipse я мог просматривать родительский модуль с двумя отдельными подмодулями. Но структура папок отображается без каких-либо отдельных подмодулей. [Представление eclipse также не отображает отдельные подмодули для того же Копируемого проекта или для любого git извлечения для моих товарищей по команде]. мне нужно, чтобы эти подмодули отображались отдельно для лучшего просмотра структуры проекта и удобства использования.

Моя структура проекта после многомодульной реализации

Eclipse UI View:

Базовый модуль

Src / main / java

Src / main / resorces

Sub module1 ( проект субмодуля в базовом модуле со всеми файлами)

-src
-resorces 

Sub Module2 (проект субмодуля в базовом модуле со всеми файлами)

-src
-resorces

Target

Testoutput

Submodule1 (Созданный проект субмодуля отображается отдельно со всеми необходимыми файлами)

-src -resorces

Submodule2 (Созданный проект субмодуля отображается отдельно) -src -resorces

Но если я проверяю структуру папок: она отображается, как показано ниже, без какого-либо субмодульного проекта отдельно (это показывает только субмодули в структуре проекта базового модуля), следовательно, если я копирую весь проект в другое место и открываю его в ecli pse, тогда представление затмения отображается без отдельного представления подмодуля. Ниже показана структура:

Структура папки

Базовый модуль

Src / main / java

Src / main / resorces

Sub module1

-src -resorces

Sub Module2

-src -resorces

Target

Testoutput

(не отображается отдельная структура субмодуля)

My Pom. xml файлы:

Parent Pom. xml

<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>com.ice</groupId>
    <artifactId>IDPautomationframe</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>pom</packaging>

    <name>IDPautomationframe</name>
    <url>http://maven.apache.org</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <log4j.configuration>src/test/resources/log4j.properties</log4j.configuration>
        <testResourcesDir>src/test/resources</testResourcesDir>
        <ParallelSuiteThreads>1</ParallelSuiteThreads>
        <SThreads>1</SThreads>
        <testngFile>testng_chrome.xml</testngFile>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-server</artifactId>
            <version>3.14.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.12</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-excelant</artifactId>
            <version>3.12</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-examples</artifactId>
            <version>3.12</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <inherited>true</inherited>
                <version>3.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19</version>
                <configuration>
                    <testFailureIgnore>true</testFailureIgnore>
                    <Skip>true</Skip>
                    <suiteXmlFiles>
                        <suiteXmlFile>${testResourcesDir}/${testngFile}</suiteXmlFile>
                    </suiteXmlFiles>
                    <properties>
                        <property>
                            <name>suitethreadpoolsize</name>
                            <value>${SThreads}</value>
                        </property>
                    </properties>
                    <!-- <systemPropertyVariables> <suitethreadpoolsize>${SThreads}</suitethreadpoolsize> 
                        </systemPropertyVariables> -->
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <testFailureIgnore>true</testFailureIgnore>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <modules>
        <module>FIBT</module>
        <module>Pretrade</module>
    </modules>
</project>

Модуль: 1 pom:

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.ice</groupId>
    <artifactId>IDPautomationframe</artifactId>
    <version>0.0.1-SNAPSHOT</version>    
  </parent>
  <artifactId>FIBT</artifactId>
  <version>0.0.1-SNAPSHOT</version>  
  <name>FIBT</name>
  <packaging>pom</packaging>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency> 
  </dependencies>
</project>

Подмодуль 2:

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.ice</groupId>
    <artifactId>IDPautomationframe</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <groupId>com.ice</groupId>
  <artifactId>Pretrade</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>Pretrade</name>
  <packaging>pom</packaging>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
...