最近在搞一个项目,要自己创建一个maven的子项目,总结一下以后自己看;

1.创建一个父项目

NEW -->project-->maven-->maven Project,点击下一步,进入new maven Project的Select project name and location界面

在Browse选择总的程序,然后点下一步;

Select an Archetype界面(选择一个原型)

选择maven-archetype-site-simple这个选项,然后点击下一步

在group id 和artifact id中输入你的group和artifact名称。我用的分别是all和all,选择完成。这时会在eclipse中生成一个项目,项目名是all。

会生成一个maven项目

将项目all中的src文件删除(可有可无)

2. 创建子项目

选中项目all,点击右键,选择NEW -->project-->maven-->maven Module,点击下一步,在出现的界面中输入子项目名称

点击下一步,出现Select an Archetype界面。这时选择maven-Archetype-site-quickStart或者maven-Archetype-webapp(构建web层时使用),然后选择完成,即生成子项目C。

对于这些非常规类型的项目,如果想要成为父项目,需要做如下一些改动:

1.将pom.xml文件中的<packaging>jar</packaging>改为<packaging>pom</packaging>,若不换为pom则在打包的时候父项目会产生一个target文件;如果没有<packaging>pom</packaging>的可以在<version>0.0.1-SNAPSHOT</version>后面添加上这句话即可。

2.删除除pom.xml外的所有文件,其中JRE System Library是不能直接删除的,需要选择中,并单击右键Bulid Path-->Remove from bilud path即可移除。

这时的父项目就显得很干净整洁了。

其实在普通的项目上是不允许构建子模块的,能否在一个项目下创建子模块,主要取决于是否有<packaging>pom</packaging>这个配置。如果有这个配置则任何项目都可以创建子模块,硬要这样创建的话整个项目会变的不伦不类。看来maven在判断一个项目是否可以创建子模块其实是取决于这个配置的。

到现在就完成了maven的父子项目搭建,在构建完项目后会,发布到tomcat会发现一个问题,那就是发布到tomcat不成功,373ms后tomcat自动完成了,我在实际搭建的时候困扰了很久不得其法,最后发现在tomcat的项目里lib包中没有对应的jar,才知道是少了依赖;

解决方法如下:

右击项目->properties->找到Deployment Assembly,右边便是编译打包的配置,看是不是缺少了lib库的依赖,我的就是,点击Add,添加maven依赖库如下:

之后就可以正常发布了;

其中zc是父项目,同时承担聚合模块和父模块的作用,没有实际代码和资源文件 ;

zc.commons是基础项目,里面是公共的代码 ;

zc.xxx.src是业务子模块,不包含web内容;

zc.xxx.web是某一个web子模块 ,不包含业务代码;

创建Maven父子项目及发布到tomat的完整过程相关推荐

  1. Eclipse创建Maven父子项目

    1.项目需求 今天就介绍在Eclipse中创建Maven父子项目,举一个例子,需要建立如下关系的Maven项目. 2.构建一个父级maven项目 新建一个Maven项目,如下图所示: 选择默认工作空间 ...

  2. IDEA 创建 MAVEN 父子工程

    IDEA 创建 MAVEN 父子工程 1.参考资料 IDEA 创建MAVEN父子项目 使用IDEA创建maven父子工程 使用IDEA创建maven父子工程项目 2.创建 Maven 父工程 选择新建 ...

  3. IDEA 创建SpringBoot多级Maven父子项目

    IDEA 创建SpringBoot多级MAVEN父子项目 一.环境准备 1.JDK安装配置 2.MAVEN安装配置 二.项目搭建 1.创建顶级Maven项目 附: 一级项目完整`pom.xml`配置 ...

  4. Java归去来第2集:利用Eclipse创建Maven Web项目

    一.前言 如果还不了解剧情,请返回第一集的剧情          Java归去来第1集:手动给Eclipse配置Maven环境 二.利用Eclipse创建Maven Web项目 选择File-New- ...

  5. 深入理解微服务Maven父子项目构造以及项目打包部署

    一.问题背景 随着微服务项目的越来越流行,更多的公司开始使用微服务来搭建自己的业务系统.微服务很好地解耦了业务,每一个服务只提供特定的功能,真正的做到了各司其职,互不干扰,同时微服务间可以互相通信,可 ...

  6. 黑猴子的家:Maven 父子项目

    1.创建maven项目,删除src文件 2.编辑pom.xml文件,配置<packaging>pom</packaging> 3.第二层maven父子项目和第一次maven父子 ...

  7. IDEA 创建Maven Web项目

    背景 公司有一个非常老的项目,决定进行简单重构,纳入自动化流水线部署的序列.原项目采用很古老的Jar包依赖模式,也就是直接将jar包放在项目中.同时,项目结构也非常奇特,不是标准的Web项目目录结果. ...

  8. idea创建maven web项目

    idea创建maven web项目 1.File->New->Project 2.找到org.apache.maven.archetypes:maven-archetype-webapp ...

  9. 荐 Intellij IDEA创建Maven Web项目(带有webapp文件夹目录的项目)

    转载自:点击打开链接 在创建项目中,IDEA提供了很多项目模板,比如Spring MVC模板,可以直接创建一个基于Maven的Spring MVC的demo,各种配置都已经设定好了,直接编译部署就可以 ...

最新文章

  1. 学习笔记------tag文件
  2. 谷歌大脑联手Hinton提出SimCLR新框架,疯狂提升自监督学习性能
  3. 体验VMware Converter Client 6.2与Veeam BR 10迁移ESXi 6.0 vm到vCenter 6.7 u3
  4. 如何在html中选择wrap,jQuery - .wrap() 使用HTML包裹选取的元素
  5. mysql的collate_MYSQL中的COLLATE是什么?
  6. Dubbo透传traceId/logid的一种思路
  7. Chinese Version Vocaloid AI Tuner Feasibility Test
  8. 软件外包平台列表(转载-知乎网)
  9. 什么是gc和gc的工作原理
  10. Reducing Language Biases in Visual Question Answering with Visually-Grounded Question Encoder 论文笔记
  11. cad2017单段线_AutoCAD2017命令总结
  12. 实训日志(十)——达芬奇调色
  13. 国家开发银行软件测试工资待遇,国家开发银行总行工资待遇
  14. java 找出所有水仙花数,java 水仙花数 所有的
  15. GAN动漫人像生成实现(附带源码)
  16. 12306nbsp;售票网站新版验证码识别对抗
  17. 直播视频app源码,Android 点击生成二维码
  18. 利用二维数组编程输出九九乘法表 ← C语言
  19. 烤仔创作者联盟 | 咱就是说,我们社区的DAO组织发展历程
  20. QT打包时系统提示 Cannot find Visual Studio redist directory

热门文章

  1. python暴力破解wifi密码原理
  2. 【模拟IC】模拟集成电路面试题分享(1)
  3. 地图工具类:02坐标系与84坐标系转换
  4. 虚拟分布式交换机配置与管理
  5. mac m1 tensorflow环境安装问题
  6. 在收到消息后秒级使网站变灰,不改代码不上线,如何实现?
  7. linux程序包覆盖安装,Linux—程序包安装与管理
  8. PTA 7-33 统计素数并求和
  9. 磁盘磁带光盘是计算机系统中,磁盘、磁带和光盘是计算机系统中最常用的( )。...
  10. ouster-32激光雷达实测:ROS驱动编译使用与设备连接的网络配置