1.maven
Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。
Maven也可被用于构建和管理各种项目,例如C#,Ruby,Scala和其他语言编写的项目。Maven曾是Jakarta项目的子项目,现为由Apache软件基金会主持的独立Apache项目。
在Java项目中可以较方便的管理软件中用到的jar包,以及jar包之间的依赖关系
1.1 maven三要素
groupId 公司或组织的唯一标识
artifactId 项目的唯一标识
version 版本SNAPSHOT(快照版) RELEASE(发布版)
1.2 maven项目的目录结构
项目目录
|-src
|-main 正式代码
|-java java源码
|-resources 配置文件
|-test 测试代码
|-java 测试的java源码
|-resources 测试的配置文件
|-webapp
|-jsp
|-WEB-INF
|-css
|-js
pom.xml maven自身的配置文件
1.3 pom文件的功能
- 管理jar包
<!-- 依赖项 -->
<dependencies>
<dependency>
<groupId>jar的组织id</groupId>
<artifactId>jar的项目id</artifactId>
<version>版本</version>
</dependency>
</dependencies>
- 常见jar包依赖:
<!-- mysql 驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.12</version>
</dependency>
<!-- 单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<!-- 开发web程序需要用到-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.2.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- 开发文件上传 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.3</version>
</dependency>