天天看点

创建不了dao包对象_maven创建父子工程

按照maven工程拆分和聚合的思想,看看父子工程怎么创建。

1、创建父工程

父工程只需要一个pom.xml就可以,其他都可以不要,也就是说父工程主要是用来管理我们的jar包坐标的。

新建maven项目,因为只留一个pom.xml文件,所以新建时候可以不用选择骨架。

创建不了dao包对象_maven创建父子工程

建好项目之后,只留pom.xml,其余的文件夹都可删掉。

创建不了dao包对象_maven创建父子工程

2、创建子模块

实际项目中可能会有很多个子模块,当然它们创建方法都是一样的。这里为了测试就建三个,就是我们的dao、service和controller模块。

2.1 dao模块

右键父工程,此时只有新建一个module。

创建不了dao包对象_maven创建父子工程

dao这个模块是不需要和页面有交互的,所以它只需要是一个java工程即可,那么新建的时候也简单一些,不用选择任何骨架。

新建完成之后,在parent工程下多了一个叫maven_dao的项目。

创建不了dao包对象_maven创建父子工程

打开dao这个模块的pom文件,会发现有一个parent标签,里面是父工程的坐标。dao模块可以复用父工程的groupId和version,但是必须有自己的artifactId。也就是说dao的坐标就是:父工程的groupId+自己的artifactId+父工程的version。

创建不了dao包对象_maven创建父子工程

此时再看回父工程的pom文件:

创建不了dao包对象_maven创建父子工程

自动地多了一个modules标签,这代表它的子模块,也就是它现在有几个子模块都会在这里显示。

2.2 service模块

service模块同样也不用和页面交互,所以和dao同样的步骤。

创建不了dao包对象_maven创建父子工程

此时父工程pom文件里有了两个子模块

创建不了dao包对象_maven创建父子工程

2.3 controller模块

最后一个模块controller,需要与页面交互,我们选择一个骨架,选择maven的webapp。

创建不了dao包对象_maven创建父子工程

因为使用了骨架,pom文件里会多了很多内容,不必要的我们可以先删除掉,只留图中内容即可:

创建不了dao包对象_maven创建父子工程

可以看到它的打包方式是war,先前dao和service模块都没有显示打包方式,它们默认是jar的方式。

好了,现在父子工程已经创建完成,最终的结构如下:

创建不了dao包对象_maven创建父子工程

剩下的工作就是代码编写。