以生活应用lifeapp为例
进到一个目录下
cd /Users/guanxianghui/Documents/05.be/
执行
mvn archetype:generate -DgroupId=com.shhxzq.fin -DartifactId=lifeapp -Dversion=1.0.0-SNAPSHOT -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行后创建lifeapp项目,进入目录
cd lifeapp
执行
vim pom.xml
将
<packaging>jar</packaging>
改成
<packaging>pom</packaging>
再删除src目录
rm -rf src
进入目录
cd lifeapp
执行
mvn archetype:generate -DgroupId=com.shhxzq.fin -DartifactId=lifeapp-biz -Dpackage=com.shhxzq.fin.lifeapp.biz -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行后创建lifeapp-biz模块,修改文件
vim pom.xml 删除<groupId>com.shhxzq.fin</groupId> 删除<version>1.0-SNAPSHOT</version>
进入目录
cd lifeapp
执行
mvn archetype:generate -DgroupId=com.shhxzq.fin -DartifactId=lifeapp-dao -Dpackage=com.shhxzq.fin.lifeapp.dao -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行后创建lifeapp-dao模块,修改文件
vim pom.xml 删除<groupId>com.shhxzq.fin</groupId> 删除<version>1.0-SNAPSHOT</version>
进入目录
cd lifeapp
执行
mvn archetype:generate -DgroupId=com.shhxzq.fin -DartifactId=lifeapp-model -Dpackage=com.shhxzq.fin.lifeapp.model -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行后创建lifeapp-model模块,修改文件
vim pom.xml 删除<groupId>com.shhxzq.fin</groupId> 删除<version>1.0-SNAPSHOT</version>
进入目录
cd lifeapp
执行
mvn archetype:generate -DgroupId=com.shhxzq.fin -DartifactId=lifeapp-remote -Dpackage=com.shhxzq.fin.lifeapp.remote -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行后创建lifeapp-remote模块,修改文件
vim pom.xml 删除<groupId>com.shhxzq.fin</groupId> 删除<version>1.0-SNAPSHOT</version>
进入目录
cd lifeapp
执行
mvn archetype:generate -DgroupId=com.shhxzq.fin -DartifactId=lifeapp-service -Dpackage=com.shhxzq.fin.lifeapp.service -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行后创建lifeapp-service模块,修改文件
vim pom.xml 删除<groupId>com.shhxzq.fin</groupId> 删除<version>1.0-SNAPSHOT</version>
进入目录
cd lifeapp
执行
mvn archetype:generate -DgroupId=com.shhxzq.fin -DartifactId=lifeapp-web -Dpackage=com.shhxzq.fin.lifeapp.web -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
执行后创建lifeapp-web模块,修改文件
vim pom.xml 删除<groupId>com.shhxzq.fin</groupId> 删除<version>1.0-SNAPSHOT</version>
view pom.xml 看到 lifeapp项目包括以下六个模块
<modules> <module>lifeapp-biz</module> <module>lifeapp-dao</module> <module>lifeapp-remote</module> <module>lifeapp-model</module> <module>lifeapp-web</module> <module>lifeapp-service</module> </modules>
分析各个模块之间的依赖
lifeapp-model -> null(不依赖任何一个模块)
lifeapp-dao -> lifeapp-model
lifeapp-service -> lifeapp-model
lifeapp-biz -> lifeapp-service -> lifeapp-dao -> lifeapp-remote
lifeapp-remote -> lifeapp-model
lifeapp-web -> lifeapp-biz
在各个模块中按以下形式,添加依赖模块
<dependency> <groupId>com.shhxzq.fin</groupId> <artifactId>lifeapp-XXX</artifactId> <version>${project.version}</version> </dependency>
到这里基础项目配置完毕
进入目录
cd lifeapp
执行
mvn clean install
输出
[INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] lifeapp ............................................ SUCCESS [ 0.379 s] [INFO] lifeapp-model ...................................... SUCCESS [ 2.157 s] [INFO] lifeapp-service .................................... SUCCESS [ 0.363 s] [INFO] lifeapp-dao ........................................ SUCCESS [ 0.301 s] [INFO] lifeapp-biz ........................................ SUCCESS [ 0.299 s] [INFO] lifeapp-remote ..................................... SUCCESS [ 0.322 s] [INFO] lifeapp-web Maven Webapp ........................... SUCCESS [ 0.423 s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 4.380 s [INFO] Finished at: 2016-09-05T16:47:06+08:00 [INFO] Final Memory: 22M/165M [INFO] ------------------------------------------------------------------------
看到lifeapp项目编译打包成功
将war包拷贝到tomcat的webapps中,启动tomcat,访问http://localhost:8080/lifeapp-web/,浏览器上看到如下内容,说明访问正常
Hello World!