如何使用SVN中的某些模块配置多模块Maven项目的父模块

镜片

我是Maven的初学者。简而言之,我在一个Web项目中有三个模块:父模块,Web模块和服务模块。

parent-module
  +----web-module
  |         +----pom.xml
  +----service-module
  |         +----pom.xml
  +----pom.xml

通常,parent-module.pom.xml可能会这样:

<modules>
   <module>../web-module</module> 
   <module>../service-module</module>
</modules>

当service-module在svn中并且我还没有签出时,我该如何配置parent-module.pom.xml。

赫马尔拜兹

您的结构是错误的。更改文件夹结构使您的生活更轻松。

+-- parent-module (pom.xml)
        +--- web-module (pom.xml)
        +--- service-module (pom.xml)

最好将上述结构放入SVN的主干中。这意味着您可以检出项目的主干,然后在工作副本中获得上述结构。因此结果是:

svn checkout URL/project/trunk workingcopy

将在workgincopy文件夹中创建以下内容

+-- (pom.xml)
        +--- web-module (pom.xml)
        +--- service-module (pom.xml)

基于以上内容,您的父模块将如下所示:

<project>
  <groupId>whatEver</groupId>
  <artifactId>project-parent</artifactId>
  <version>1.0-SNAPSHOT</version>
  ...
  <modules>
     <module>web-module</module> 
     <module>service-module</module>
  </modules>
</project>

现在您的孩子(网络模块)如下所示:

<project>
  <parent>
    <groupId>whatEver</groupId>
    <artifactId>project-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <artifactId>web-module</artifactId>
  <packaging>war</packaging>

  <dependencies>
    <dependency>
      <groupId>whatEver</groupId>
      <artifactId>service-module</artifactId>
      <version>${project.version}</version>
    </dependency>
  </dependencies>
...
</project>

最后,您的服务模块如下所示:

<project>
  <parent>
    <groupId>whatEver</groupId>
    <artifactId>project-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <artifactId>service-module</artifactId>

...
</project>

因此,在Maven中,您可以更改为项目的根目录(工作副本),并通过以下方式构建整个项目:

mvn clean package

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在多模块Maven项目的子模块中禁用某些执行器规则?

适用于多模块项目的Maven Jacoco配置

如何在IntelliJ IDEA中将Maven多模块项目的嵌套模块显示为顶级模块?

Maven中多模块项目和父项目之间的差异

多模块项目的Maven分发管理

Maven多模块项目的最佳方法

从多模块项目的父模块运行的mvn spring boot仅启动模块中的第一个项目。如何同时启动?

如何在Maven中创建多模块项目?这样子项目的所有代码库都可以放在父项目中

如何在多模块项目中配置Maven Shade插件?

在多模块maven项目中使用配置文件

多模块Maven项目

在多模块项目的子模块中忽略了Maven-release-plugin目标

如何使用Jacoco检查多模块Maven项目的最小代码覆盖率?

Maven:多模块父项目的子模块可以在另一个完全独立的项目中使用吗?

多模块项目的建设。如何包装模块?

是否可以从Maven多模块项目的父模块内的config文件夹中加载Spring-Boot属性?

如何在具有与模块并行存储的父级的多模块项目中使用 jqassistent?

如何打包多模块Maven项目?

如何在Maven中使用多模块项目创建汇编

Eclipse中的Maven多模块项目链接

Java Maven中的多模块项目管理

在Eclipse中重构Maven多模块项目

如何在多模块Maven项目中让子项目继承超级项目的依赖版本?

使用Eclipse创建Maven多模块项目

单模块与多模块Maven项目

如何使用平面模块层次结构部署Maven父模块?

如何使用父模块使子模块的Maven构建?

多模块项目的热插拔代理配置

如何在maven多模块项目中访问其他模块pom中定义的属性