如何通过命令行和Eclipse实现多模块Maven项目的pom文件?

时间:2019-05-29 04:23:45

标签: maven-3 maven-plugin maven-scm maven-scm-plugin

我有一个要求将pom文件提供给开发人员的条件,他必须能够仅使用pom来实现maven项目。

我已经查看了pom文件。因此pom文件将包含一些子模块。当我移交pom文件时,开发人员必须能够仅使用pom文件来实现整个项目。如何配置POM文件来实现此目的?

因此,到目前为止,我所做的是添加SCM开发人员连接,其中包含项目主干文件夹的svn url。然后进行SCM结帐。问题在于,该干线具有我的maven pom文件中未提及的其他模块,这些模块也正在导入。解决方法是什么? Maven中是否有任何命令或配置可以帮助我仅检出POM文件中存在的模块。

        <modules>
               <module>....</module>
               <and more modules here/>
        </modules>
        <scm>
         <connection>scm:svn:https://trunk</connection>
         <developerConnection>scm:svn:https://trunk</developerConnection>
         <url>https://trunk/branchWhereFolderExists</url>
         </scm>

        <!-- SCM plugin -->
        <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-scm-plugin</artifactId>
             <version>1.11.2</version>
             <configuration>
               <goals>install</goals>
               <includes>${project.modules}</includes>
               <goals>checkout
               <includes>${project.modules}</includes>
               </goals>
               <checkoutDirectory>/checkoutDirectory/</checkoutDirectory>
             </configuration>
        </plugin>

我尝试执行构建的命令行参数 mvn scm:checkout -DprojectVersion = 1.1-R mvn scm:bootstrap -N

这种配置是否正确?

所以最终将获得整个项目,而不仅仅是我需要的模块。

在这种情况下,是否需要仅使用SVN中需要的模块为项目创建单独的文件夹结构? 是否可以使用Maven迭代插件对模块进行迭代以将其附加到scm url配置中以分别检出模块?

我对这里还有其他事情很困惑?我是否需要在这里使用Maven发布插件?

预期的结果是,一旦存在POM文件。开发人员必须能够使用正确的文件夹结构实现整个项目,并仅导入pom中配置的模块,而不是导入主干中存在的所有模块。 maven执行完成后,必须准备好运行项目。

0 个答案:

没有答案