Idea-Maven多模块开发

公司开发:多项目开发(含多模块),基于模块的开发

方式一:新建立Maven站点pom项目:

有一个父工程,有多个子模块。聚合工程。但是父工程不做具体的业务开发。仅仅只是做依赖包的版本管理。一个项目可以有多个子项目的做法。

第一步:创建一个父项目
搭建多模块项目,必须要有一个packaging为pom的根目录。
NEW -->project-->maven-->maven Project,点击下一步,进入new maven Project的Select project name and location界面(选择maven-Archetype-site-simple)

Idea-Maven多模块开发_第1张图片
image.png

父工程不做具体的业务开发,所以删除src目录

Idea-Maven多模块开发_第2张图片
image.png

父项目只有一个pom文件,用来管理所有子项目的jar包。

Idea-Maven多模块开发_第3张图片
image.png

白话:空项目,只有pom文件。
第二步:创建普通模块
添加多个子模块
必须在父项目上点击右键:创建模块,不是创建项目。

Idea-Maven多模块开发_第4张图片
image.png

基本应用:选择maven-archetype-site-quickStart
Web应用:选择maven-archetype-webapp

Idea-Maven多模块开发_第5张图片
image.png

属于父工程:

Idea-Maven多模块开发_第6张图片
image.png

注意子模块的路径:

Idea-Maven多模块开发_第7张图片
image.png

有页面的地方就可以创建web项目。

Idea-Maven多模块开发_第8张图片
image.png

新创建的项目必须观察颜色。

父子多模块工程也叫聚合工程。

第三步:模块之间调用
模块之间用坐标依赖:



com.qf.service
xiaomi-dao
1.0

Idea-Maven多模块开发_第9张图片
image.png

代码使用:

public class XiaoMiService {
public String xiaomiService(){ //希望调用DAO 的能力

    XiaoMiDAO dao = new XiaoMiDAO(); 

      String res = dao.addXiaoMi(); 
        return "小米服务:"+res; } //测试 

      public static void main(String[] args) { 
            XiaoMiService xiaoMiService = new XiaoMiService(); 

            String service = xiaoMiService.xiaomiService();                             
            System.out.println(service);
   }

}

测试的时候注意统一设置JDK的编码

Idea-Maven多模块开发_第10张图片
image.png

注意上面部分 就是多模块 但是注意指针部分 需要修改成 1.8 要不然编译时候回出现警告或者异常。

Idea-Maven多模块开发_第11张图片
image.png

上面部分也要注意,都要修改成一致的

后面会给大家介绍同一修改的插件 ,但是此方法也需要学会。

扩展拔高[在第一种方案的基础上:(了解)
目录结构的变化:

子模块可以不用添加到父模块目录中:(修改了默认的目录结构)

Idea-Maven多模块开发_第12张图片
image.png

注意我用箭头标注的地方
子模块可以不添加到父模块的目录中 但是还是依赖父模块 (需要特别注意)

目录选择注意,不放在父模块的下面

Idea-Maven多模块开发_第13张图片
image.png

注意上面的剪头所指向的目录地址 并不在父模块的文件目录下
观察项目目录如下 就生成了一个 同父级目录相同的并且依赖父项目的模块


Idea-Maven多模块开发_第14张图片
image.png

方式二:创建项目,选择Empty project,类似Eclipse放多项目的方式。 这种方式可以不需要父工程。

第一步:创建空工程


Idea-Maven多模块开发_第15张图片
image.png

效果:
选择SDK


Idea-Maven多模块开发_第16张图片
image.png

第二步:创建模块项目(普通+web)
选择File–>New–>Module,进入New Module页面:
可以创建多个普通项目和web项目,都在这个空的工程中。
鼠标需要点在最外层External Libraries上,避免创建的模块属于某个模块

点击下方的包 进行 new module 创建新的模块


image.png

新建模块:


Idea-Maven多模块开发_第17张图片
image.png

注意没有单独创建父工程:


Idea-Maven多模块开发_第18张图片
image.png

注意路径直接属于空工程中:


Idea-Maven多模块开发_第19张图片
image.png

第三步:模块之间调用

打包:


Idea-Maven多模块开发_第20张图片
image.png

坐标引用:


Idea-Maven多模块开发_第21张图片
image.png

注意JDK编译版本:
一处:


Idea-Maven多模块开发_第22张图片
image.png

二处:


Idea-Maven多模块开发_第23张图片
image.png

三处:

方式一:


Idea-Maven多模块开发_第24张图片
image.png

方式二:

UTF-8
1.7
1.7

完成上面的设置之后 ,就可以很方便的互调用了。

你可能感兴趣的