什么是Maven?
Maven是一个项目管理工具,它的一个重要的功能就是自动导入jar包,
只需要在Maven项目中的pom.xml中写入要导入的包,他就会帮我们自动导入。
回想起在我们使用JDBC的时候,需要手动导入mysql-connector-jar包
而使用Maven来创建的话,就很方便,在pom.xml中指定这个包即可。
在JavaWeb开发中,经常会用到servlet和jsp相关的包,如果每次都要手动导入非常麻烦,
所以用Maven来创建项目,导入包的时候就轻松多了。
本文重点说的是在IDEA中用Maven创建项目的几种方式以及他们的区别,如果你还没有搭建好Maven环境,请移步…
创建Maven项目要注意的问题
在IDEA中经常会出现一个问题:项目创建完毕后,它的Maven Home使用的是IDEA默认的,而我们需要把它改成本地仓库:

方式一:用maven-archetype-webapp模板创建项目
勾选:create from archetype: maven-archetype-webapp
- 我创建了一个Maven-01-archetype项目,项目的文件结构如下:

发现,用maven-archetype-webapp模板创建的项目中的main文件夹下:
多了一个webapp文件夹存放我们的web应用程序,然后缺少java文件夹和resources文件夹
**用Maven-archetype-webapp模板创建的项目需要进行两个优化才行:
1.在main目录下创建放代码的java目录和存放资源的resource目录
2.把模板项目中自动生成的web.xml更新成新版本的web.xml(这个可以直接复制Tomcat/webapps/ROOT/WEB-INFO/web.xml)
**
方式二:创建一个普通的Mavan项目
不勾选archetype模板,直接点Next创建一个普通的、干净的Maven项目

方式二.1:把整个src目录都删除作为一个主工程
这样是把这个项目当成一个大项目,然后再在里面添加一个个的Module作为子项目
可以在pom.xml中添加整个父项目需要的依赖,子项目可以直接使用父项目的依赖
总结:创建一个空的maven项目并删除src作为主工程,然后在主工程下创建一个个webapp模板创建出来的子工程
(我这里创建了一个JavaWeb-Sevlet父工程,然后在里面又创建了一个Servlet01的子工程):

方式二.2:Add Framework support然后勾选Web Application

添加完Web Application框架支持后,发现多了一个web文件夹,
就像刚刚用maven-archetype-webapp创建的项目中那个webapp文件夹一样
不过,在用模板创建的项目中,webapp放在main文件夹下
而我们通过这种方式创建的web文件夹放在项目的根目录下
本文详细介绍了在IntelliJ IDEA中使用Maven创建JavaWeb项目两种主要方式:通过maven-archetype-webapp模板创建和创建普通Maven项目。对于模板创建,需要额外设置java和resources目录,以及更新web.xml。另一种方式则是创建一个空的Maven项目,再添加Web Application框架支持或将其作为主工程包含多个子项目。每种方式都有其适用场景和特点。
653

被折叠的 条评论
为什么被折叠?



