Q:什么是Maven?
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。
Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程。当时有一些项目(有各自Ant build文件),仅有细微的差别,而JAR文件都由CVS来维护。于是希望有一种标准化的方式构建项目,一个清晰的方式定义项目的组成,一个容易的方式发布项目的信息,以及一种简单的方式在多个项目中共享JARs。
作为Java程序员较浅层最直观的解释。Maven—你配置好pom.xml后就能自动引入你所配置的jar包的一个工具
简述工作原理:
①配置pom.xml,声明需要引入的jar包
②检索本地仓库是否有pom.xml中声明的jar包,存在则从本地仓库引入,否则从Mavn中央仓库下载到本地然后引入
Q:如何安装Maven?
Q:声明依赖pom.xml示例
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- 此处为Maven项目命名相关,可修改-->
<groupId>com.xavier</groupId>
<artifactId>T01</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- 引入依赖,此处引入了 mysql数据库连接、mybatis所需的jar包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.5</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.1</version>
</dependency>
</dependencies>
</project>
Q:Scope详解
Q:如何正式引入依赖?
Maven常用指令 ↓
mvn archetype:create 创建Maven项目
mvn compile 编译源代码
mvn deploy 发布项目
mvn test-compile 编译测试源代码
mvn test 运行应用程序中的单元测试
mvn site 生成项目相关信息的网站
mvn clean 清除项目目录中的生成结果
mvn package 根据项目生成的jar
mvn install 在本地Repository中安装jar
mvn eclipse:eclipse 生成eclipse项目文件
mvnjetty:run 启动jetty服务
mvntomcat:run 启动tomcat服务
mvn clean package -Dmaven.test.skip=true:清除以前的包后重新打包,跳过测试类
博主我也是没用多久,也不好巴拉巴拉班门弄斧了,具体自行尝试吧!
我最常用的也就 mvn compile 了(会把未下载到本地仓库的jar下载过来)
Q:pom.xml里的声明上哪去找?
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
</dependency>
这些信息去官方中央仓库搜索即可
传送门:Maven中央仓库