1、需求

做一个项目会有很多模块,主要是方便复用,通过各个模块之间聚合。模块也可以独立出来,如公用类库,也可以在做其它项目中使用。该文的实例会有两个模块:分别为dallin-web模块,dallin-utils工具类模块

2、新建一个Maven父项目

  1. 打开IDEA工具,通过file——new——project——maven 如下图所示

2.不勾选Create from archetype,直接点击Next,出现如下界面

3.填写好GroupId和ArtifactId信息后,点击Next
4.填写项目名称,该项目名称为spring-demo-parent,点击Next,出现如图界面

3、建立各个子模块

1.选中建立好的项目后,右击弹出--->New--->Module,如图所示

2.之后弹出来的页面中,直接点击Next,出来如下界面

3.在ArtifactId中我填写dallin-untils(由于会继承了刚创建的父级项目,其它的信息不能修改),填完后,我点击Next
4.填写好后项目名称后,继续点击Next,创建完成。

5.我同样的方式,继续创建dallin-web项目,不过在需要勾选未webapp项目,如下图

6.我选择好创建webapp,其它和上面一样,一直到该项目创建完成!

创建好的web项目,现在配置好tomcat环境后也是能够跑起来的。我们不急跑起来,先去添加好模块之间的关系。

4、模块之间的关联关系

已经创建好了两个子模块,那就需要去添加两个子模块之间的关联。我们知道两个子项目的是web项目会引用utils项目的
子模块关系。

其中dallin-web 是依赖于dallin-utils。我们只需要在dallin-web模块中的POM.XML文件中添加如下图

父模块和子模块。

我们知道了两个模块之间的关系,那parent项目是如何找到wedallin-web子项目和dallin-utils子项目的。在parent里面的POM里面可以找到

<modules>
        <module>dallin-utils</module>
        <module>dallin-web</module>
    </modules> 

子项目有又是如何关联父项目的,在相应的子项目中的pom.xml文件中,有

        <artifactId>spring-demo-parent</artifactId>
        <groupId>com.dallin</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>

5、 配置tomcat

1.在Run/Debug Configurations -->点击左上角的“+” -->Tomcat Server --> Local 如下图所示

2.点击Local弹出的窗口中,Deployment --->右边的那个“加号”,选择dallin-web:war exploded

3.启动项目,看到Hello Word

本文pdf版下载:pdf版本下载

本文源代码下载:源码下载

代码项目地址:https://github.com/emaisi/spring-demo-parent

Java一步一步构建web系统 在IDEA下用Maven搭建多模块项目的更多相关文章

  1. 基于Spring、SpringMVC、MyBatis、Druid、Shrio构建web系统

    源码下载地址:https://github.com/shuaijunlan/Autumn-Framework 在线Demo:http://autumn.shuaijunlan.cn 项目介绍 Autu ...

  2. 2019最新 Java商城秒杀系统的设计与实战视频教程(SpringBoot版)_2-2微服务项目的搭建-SpringBoot搭建多模块项目二

    一些重要的配置文件直接复制过来了 jdbc和shiro的配置 application.properties里面的相关配置项的含义 日志界别的配置 数据返回到前端的json的配置 数据源的配置 需要新建 ...

  3. 照葫芦画瓢系列之Java --- eclipse下使用maven创建Struts 2项目

    一.创建Maven项目 http://www.cnblogs.com/zhanqun/p/8425571.html 二.添加struts2核心依赖包以及其他依赖项 打开pom.xm配置界面 点击Add ...

  4. maven之一——多模块项目构建

    参考这个帖子: http://www.cnblogs.com/xdp-gacl/p/4242221.html

  5. Java秒杀系统实战系列~构建SpringBoot多模块项目

    摘要:本篇博文是“Java秒杀系统实战系列文章”的第二篇,主要分享介绍如何采用IDEA,基于SpringBoot+SpringMVC+Mybatis+分布式中间件构建一个多模块的项目,即“秒杀系统”! ...

  6. Web系统如何做到读取客户电脑MAC等硬件信息且兼容非IE浏览器

    我们在实际Web应用中,可能会遇到“需要限定特定的电脑或用户才能使用系统”的问题. 对于一般情况来说,我们用得最多的可能是使用ActiveX控件的方法来实现,但此方案只适用于IE浏览器.为了能兼容不同 ...

  7. SpringBoot+Gradle构建多模块项目

    1 概述 Gradle由于构建速度比Maven快,且比Maven灵活,因此很多后端的应用都使用了Gradle进行构建,但一个问题是,Gradle的多模块项目比较难构建,再加上Gradle的更新非常快, ...

  8. SpringBoot+Maven 多模块项目的构建、运行、打包实战

    前言 最近在做一个很复杂的会员综合线下线上商城大型项目,单模块项目无法满足多人开发和架构,很多模块都是重复的就想到了把模块提出来,做成公共模块,基于maven的多模块项目,也好分工开发,也便于后期微服 ...

  9. 【web maven】新建的项目 controller也有,从前台跳转后台 无法找到对应的controller

    碰上很 愣的问题: 使用maven搭建项目完成,项目页面写好,实体.Dao.Service.Controller都有了,但是指定Controller中的某个方法中一直不能从前台进入后台 原因: 没有w ...

随机推荐

  1. 关于 fir.im 你可能不知道的实用小工具

    大家可能都知道 fir.im 是做测试发包的,上传你的 IPA/APK, 测试用户可以通过一个短链接和二维码就可快速安装测试. 除了基本的发包功能即应用上传下载外,fir.im 还为提高发包体验提供了 ...

  2. SVN批处理更新文件夹

    SVN批处理更新文件夹 "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:&quo ...

  3. 两套JRE

    JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境. SDK是Software Development Kit 一般指软 ...

  4. 34988 Happy Reversal(二进制去取反)

    /* 题意:给多个二进制数,对某些数进行按位取反操作! 然后从中找到最大数和最小数,并输出他们的差值! 注意:所有的数都是整数,包括取反之后 思路:一个n为二进制数x,令tmp为n位全1!则 y=tm ...

  5. Tmux - Linux从业者必备利器

    本文详细介绍tmux的概念和搭建过程 本博客已经迁移至: http://cenalulu.github.io/ 为了更好的体验,请通过此链接阅读: http://cenalulu.github.io/ ...

  6. 关于orapwd命令entries参数的探究

    今日早上看Oracle官方文档<Administrator's Guide>时,在密码文件章节,关于orapwd命令entries参数的说明如下: This argument specif ...

  7. redis session共享中的序列化问题

    今天在做session对象存入redis(set方法)时,碰到一个空指针异常,代码如下: public class CheckAccount extends HttpServlet { public ...

  8. 各种排序算法的分析及java实现

    排序一直以来都是让我很头疼的事,以前上<数据结构>打酱油去了,整个学期下来才勉强能写出个冒泡排序.由于下半年要准备工作了,也知道排序算法的重要性(据说是面试必问的知识点),所以又花了点时间 ...

  9. [java] 汇率换算器实现(2)

    [java] 汇率换算器实现(2) // */ // ]]> // */ // ]]>   [java] 汇率换算器实现(2) Table of Contents 1 系列文章地址 2 前 ...

  10. 圣诞礼物:分享几套漂亮的圣诞节 PSD 素材

    马上就到圣诞节了,这篇文章要给大家分享几套精美的圣诞节相关的 PSD 设计素材,你可以免费下载使用,用于圣诞节相关的设计项目中.这些免费素材能够帮助你节省大量的时间,而且能有很好的效果. 您可能感兴趣 ...