原贴:https://www.cnblogs.com/sdjnzqr/p/3819824.html
使用mavn构建父子依赖项目
到现在为止,使用Maven结构的Web工程越来越多,因此在此介绍一下通过Maven来构建项目的相关知识。
文档主要分为两部分:
1.如何通过maven来构建多模块的web项目
2.标准的maven项目的目录结构:(springMVC+mybatis).
1.如何通过maven来构建多模块的web项目
1)创建父工程
创建完成之后结构如下:
修改POM.xml文件,内容如下:
4.0.0
cn.telchina
mavenweb
0.0.1-SNAPSHOT
pom
mavenweb
mavenweb
UTF-8
实验平台
${project.version}
8080
/mavenweb
3.1.2.RELEASE
4.8
3.1.1
1.2.16
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-jdbc
${spring.version}
junit
junit
${junit.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
1.2.2
cglib
cglib-nodep
2.1_3
com.oracle
ojdbc6
11.2.0.3
log4j
log4j
${log4j.version}
c3p0
c3p0
0.9.1.2
org.apache.tomcat
servlet-api
6.0.35
provided
commons-beanutils
commons-beanutils
1.7.0
commons-collections
commons-collections
3.2.1
commons-fileupload
commons-fileupload
1.2.2
commons-io
commons-io
2.0.1
commons-logging
commons-logging
1.1.1
commons-lang
commons-lang
2.5
com.alibaba
fastjson
1.1.26
org.apache.maven.plugins
maven-resources-plugin
2.6
true
org.mortbay.jetty
jetty-maven-plugin
8.1.15.v20140411
maven-compiler-plugin
2.3.2
utf-8
1.6
org.apache.maven.plugins
maven-surefire-plugin
2.16
-Dfile.encoding=UTF-8
org.apache.maven.plugins
maven-war-plugin
2.2
mavenweb
org.apache.tomcat.maven
tomcat7-maven-plugin
2.1
${product.run.port}
${product.run.path}
com.github.goldin
copy-maven-plugin
0.2.5
删除无用的配置文件后,文件结构如下:
2)创建Service模块
修改POM.xml
4.0.0
cn.telchina
mavenweb
0.0.1-SNAPSHOT
mavenweb-service
org.springframework
spring-webmvc
org.springframework
spring-tx
org.springframework
spring-jdbc
junit
junit
org.mybatis
mybatis
org.mybatis
mybatis-spring
cglib
cglib-nodep
com.oracle
ojdbc6
log4j
log4j
c3p0
c3p0
org.apache.tomcat
servlet-api
provided
commons-beanutils
commons-beanutils
commons-collections
commons-collections
commons-fileupload
commons-fileupload
commons-io
commons-io
commons-logging
commons-logging
commons-lang
commons-lang
com.alibaba
fastjson
3)创建WEB模块
修改POM文件,内容如下:
4.0.0
cn.telchina
mavenweb
0.0.1-SNAPSHOT
mavenweb-webapp
war
cn.telchina
mavenweb-service
org.apache.maven.plugins
maven-resources-plugin
org.apache.maven.plugins
maven-war-plugin
org.mortbay.jetty
jetty-maven-plugin
4)在父工程的POM文件中引入新创建的模块:
完成后,pom文件变成:
4.0.0
cn.telchina
mavenweb
0.0.1-SNAPSHOT
pom
mavenweb
mavenweb
UTF-8
实验平台
${project.version}
8080
/mavenweb
3.1.2.RELEASE
4.8
3.1.1
1.2.16
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-jdbc
${spring.version}
junit
junit
${junit.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
1.2.2
cglib
cglib-nodep
2.1_3
com.oracle
ojdbc6
11.2.0.3
log4j
log4j
${log4j.version}
c3p0
c3p0
0.9.1.2
org.apache.tomcat
servlet-api
6.0.35
provided
commons-beanutils
commons-beanutils
1.7.0
commons-collections
commons-collections
3.2.1
commons-fileupload
commons-fileupload
1.2.2
commons-io
commons-io
2.0.1
commons-logging
commons-logging
1.1.1
commons-lang
commons-lang
2.5
cn.telchina
mavenweb-service
0.0.1-SNAPSHOT
cn.telchina
mavenweb-webapp
0.0.1-SNAPSHOT
war
com.alibaba
fastjson
1.1.26
org.apache.maven.plugins
maven-resources-plugin
2.6
true
org.mortbay.jetty
jetty-maven-plugin
8.1.15.v20140411
maven-compiler-plugin
2.3.2
utf-8
1.6
org.apache.maven.plugins
maven-surefire-plugin
2.16
-Dfile.encoding=UTF-8
org.apache.maven.plugins
maven-war-plugin
2.2
mavenweb
org.apache.tomcat.maven
tomcat7-maven-plugin
2.1
${product.run.port}
${product.run.path}
com.github.goldin
copy-maven-plugin
0.2.5
mavenweb-service
mavenweb-webapp
5)加入源码和配置文件,系统创建完成。
2.标准的maven项目的目录结构
目录结构推荐:
说明:
1.后台服务模块相关的代码放到Service模块中,所有前台代码放到Webapp模块中。
2.所有的配置文件放到Service模块的resource模块中。