Maven入门学习
1.概念:
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),
一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。
2.仓库的种类和彼此关系:
*仓库分三类:本地仓库,远程仓库[私服],中央仓库
3.maven项目标准目录结构:
src/main/java目录 核心代码部分
src/main/resources 配置文件部分
src/test/java目录 测试代码部分
src/test/resources 测试配置文件
src/main/webapp 页面资源 js,css,图片等待..
4.maven常用命令
clean:清除项目编译信息,避免在导入别人的项目时开发环境不同运行不了
compile:编译src/main目录下的java代码
test:编译src/main和src/test目录下的java代码
package:打包,编译了src/main和src/test目录下的java代码,并且将项目打成指定格式的包
install:安装,完成打包的工作后将包安装到本地仓库
deploy:发布
5.maven生命周期
1.清理生命周期:项目构建之前的准备工作
2.默认生命周期:每一个命令都是对项目进行构建,当执行后面命令的时候前面的命令会自动执行一次
3.站点生命周期:
6.maven概念模型图:
*maven的两大核心功能:
1.依赖管理
2.一键构建
IDEA集成maven插件
1.配置步骤:
1.先安装本地maven
1.解压maven安装包到没有中文没有空格的目录下
2.配置环境变量
3.将本地仓库需要的jar包放在没有中文没有空格的目录下
2.IDEA相关配置
1.设置maven的主目录(安装目录)
2.设置settings.xml文件目录,会自动生成本地仓库的地址
3.设置运行时VM选项为-DarchetypeCatalog=internal,指定创建项目是获取内置文件而不需要下载,加快项目创建的速度
2.创建一个maven项目
1.根据骨架创建
2.不根据创建
3.maven创建一个web项目
1.根据骨架org.jetbrains.idea.maven.model.MavenArchetype@8994c18c创建一个webapp项目
2.pom.xml中导入项目所需要的jar包
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
*<scope>标签指定jar包的作用域
*compile:默认范围,在编译,测试,运行时都有效
*test:指在测试中有效 例如:Junit
*provided:指只在编译时有效 例如:servlet-api
*runtime:在测试和运行时有效 例如:JDBC驱动
*system:在编译,测试时有效
*注意:
maven运行web项目是默认tomcat版本为6,如果需要修改版本可以在pom.xml中添加:
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>80</port>
</configuration>
</plugin>
</plugins>