我有一个要求将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执行完成后,必须准备好运行项目。