通常情况下,我们一个项目是需要分多个模块的,这是我们用maven管理项目就需要构建一个多模块的项目;

通常的结构是一个模块中有一个主项目,下面包含多个子项目,如果是web项目则子项目中有一个是javaweb项目,主项目的作用是给子项目用来继承的;

以下是使用maven构建一个模块的具体步骤:以构建一个项目 主项目下包含 domain dao service 和web层为例来进行说明:

1:构建用来被继承的主项目(项目名称为:parent):

使用命令行构建一个java项目,项目名为parent(假设在 D:\maven\MavenModule 项目下构建):

mvn archetype:create -DgroupId=%a3% -DartifactId=%a4% -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

将以上命令行的占位符替换为相应的包名和项目名即可;

此时构建好的项目包含 src目录和pom.xml文件,该项目是用来被继承的,不需要用来实现具体的业务逻辑:只保留pom.xml文件即可,删除src目录,同时更改pom.xml文件的内容:

将打包的方式改为pom的方式:更改后pom.xml文件如下所示:

2:构建domain项目:

由于项目是需要继承parent项目的,则在目录结构是的体现是domain项目在D:\maven\MavenModule\parent 下构建:

和构建parent项目使用的命令行一致来构建domain项目:

构建好的domain项目需要删除pom.xml文件中的包名(即groupId)这项:继承主项目的,增加打包方式为jar

更改后的pom.xml文件如下:

这是在parent项目的pom.xml中会有domain项目依赖的体现

3:使用同样的方式构建dao 和 service项目:这里略过

4:构建web项目:

在D:\maven\MavenModule\parent目录下使用以下的命令行构建web项目:

mvn archetype:create -DgroupId=%a3% -DartifactId=%a4% -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

同样的构建好web项目后,maven默认的servlet版本是2.3,如需要更新的版本则需要更改web.xml文件头;

构建好了module之后,需要按照maven的标准结构来添加相应的目录结构:

添加了相应的目录后的结构如下:这里只展开domain 和web目录作为参考:

到此,一个完整的module项目就构建好了,只需要将其发布到tomacat容器或jetty容器即可以跑起来了

下一章介绍pom.xml,以即 maven+spring 项目打包时的一些注意点

二:maven构建module的更多相关文章

  1. Maven学习总结(二)——Maven项目构建过程练习

    上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项目的过程 一.创建Maven项目 1.1.建立Hello项目 1.首先建立Hello项目,同时建立M ...

  2. Maven学习总结(二)——Maven项目构建过程练习_转载

    上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项目的过程 一.创建Maven项目 1.1.建立Hello项目 1.首先建立Hello项目,同时建立M ...

  3. 转】Maven学习总结(二)——Maven项目构建过程练习

    原博文出自于:http://www.cnblogs.com/xdp-gacl/p/4051690.html 感谢! 上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven ...

  4. (转)Maven学习总结(二)——Maven项目构建过程练习

    孤傲苍狼 只为成功找方法,不为失败找借口! Maven学习总结(二)——Maven项目构建过程练习 上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项 ...

  5. Sonar+Hudson+Maven构建系列之二:迁移Sonar

    摘要:由于昨天在一台机器上安装的东西太多了,导致Linux机器上非常卡,一台Linux负担了jira, fisheye, confluence, sonar, hudson, mysql 等等,本来已 ...

  6. 利用Eclipse中的Maven构建Web项目报错(二)

    利用Eclipse中的Maven构建Web项目 1.错误描述 [INFO] Scanning for projects... [INFO] [INFO] Using the builder org.a ...

  7. 利用Eclipse中的Maven构建Web项目(二)

    利用Eclipse中的Maven构建Web项目 1.新建源文件夹,Java Resources鼠标右键,"New-->Source Folder" 2.新建src/main/ ...

  8. Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务

    文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...

  9. 使用Maven构建多模块项目

    [转] 使用Maven构建多模块项目 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为domain(域模型层).dao(数据库访问层).service(业务 ...

随机推荐

  1. ubuntu查找命令比较

    1. find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件.    find的使用格式如下:     $ find <指定目录> <指定条件> < ...

  2. 合成冷色黑暗恐怖魔法师图片的PS教程

    教程主要使用Photoshop合成黑暗风格的魔法师施法场景,整体的场景效果以冷色风格为主,加上素材的叠加完成最终效果图,希望朋友可以喜欢.效果图: 先把背景拖进去,用工具吧字母弄掉. 加一个调色图层 ...

  3. ShowMsg函数

    ShowMsg():显示提示信息,跳转到相应页面 例子: ShowMsg(,);

  4. 在mac console下 执行c++文件

    1 $ g++ -o NewFileName OldFileName.cpp -o is the letter O not zero NewFileName will be your executab ...

  5. 1、wei-d-s嵌入式与PC区别,LED等的点亮以及调用C函数

    tiny6410之点亮Led灯: .global _start _start: ldr r0,0x70000000 //目的是把外设基地址告诉cpu orr r0,r0,#0x13 mcr p15,0 ...

  6. 【c3p0】 C3P0的三种配置方式以及基本配置项详解

    数据库连接池C3P0框架是个非常优异的开源jar,高性能的管理着数据源,这里只讨论程序本身负责数据源,不讨论容器管理. ---------------------------------------- ...

  7. python 修改文件编码方式

    import chardet import os def strJudgeCode(str): return chardet.detect(str) def readFile(path): try: ...

  8. AD采样的一个例子

    用122.88k时钟采样153.6k的信号

  9. Citrus Engine简单Demo

    Citrus Engine是一个的开源flash平台(platform,也可以说是卷轴类)游戏引擎,它基于Starling Framework添加了各种物理引擎,3D引擎,动画引擎. Citrus实现 ...

  10. 用于sql代码实现用户的创建,以及不同用户之间登陆的切换

    --1.准备工作.创建两个登录名Create Login Login1 with Password='123456';Create Login Login2 with Password='123456 ...