目录
第一节:Maven 简介
第二节:Maven 安装与配置
第三节:Maven Hello World 实现
第四节:Maven 本地仓库迁出C 盘
(1)Maven简介:
(2)Maven安装与配置:
(3)Maven Hello World实现:
(4)Maven本地仓库迁出C盘:
百度百科; Maven 官网:http://maven.apache.org/ |
Maven 下载:http://maven.apache.org/download.cgi
首先要确定 jdk 已经安装和配置把 maven 解压到放到 D 盘 配置 maven 环境变量:MV_HOME D:\maven\apache-maven-3.3.3 |
model Version: POM 模型 版本4.0.0 固定 group Id: 一般指某个公司或者某个组织的某个项目 比如 org.springframework artifactId: 一般指某个具体项目的某个具体模块 比如 spring-context Version: 项目的版本 Maven 常见命令 Mvn compile 编译 Mvn clean 清空 Mvn test 测试 Mvn package: 打包 Mvn install: 把项目安装到本地仓库 Mvn 远程仓库地址: http://mvnrepository.com/ |
配置 setting 文件
|
项目管理工具软件。
可通过一小段描述信息管理项目的构建,是报告和文档的项目管理工具软件。
常用命令:
mvn archetype:generate 创建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:清除以前的包后重新打包,跳过测试类
生命周期:
Maven的生命周期是为了对所有的构建过程进行了抽象了,便于统一。
clean(清理)
cleanup(清理所有)
此生命周期旨在给工程做清理工作,它主要包含以下阶段:
pre-clean - 执行项目清理前所需要的工作。
clean - 清理上一次build项目生成的文件。
post-clean - 执行完成项目清理所需的工作.
default(默认)
validate - 验证项目是否正确且所有必要的信息都可用。
initialize - 初始化构建工作,如:设置参数,创建目录等。
generate-sources - 为包含在编译范围内的代码生成源代码.
process-sources - 处理源代码, 如过滤值.
generate-resources -
process-resources - 复制并处理资源文件,至目标目录,准备打包。
compile - 编译项目中的源代码.
process-classes - 为编译生成的文件做后期工作, 例如做Java类的字节码增强.
generate-test-sources - 为编译内容生成测试源代码.
process-test-sources - 处理测试源代码。
generate-test-resources -
process-test-resources - 复制并处理资源文件,至目标测试目录。
test-compile - 将需测试源代码编译到路径。一般来说,是编译/src/test/java目录下的java文件至目标输出的测试classpath目录中。
process-test-classes -
test - 使用合适的单元测试框架运行测试。这些测试代码不会被打包或部署。
prepare-package -
package - 接受编译好的代码,打包成可发布的格式,如 JAR 。
pre-integration-test -
integration-test - 按需求将发布包部署到运行环境。
post-integration-test -
verify -
install -将包安装到本地仓库,给其他本地引用提供依赖。
deploy -完成集成和发布工作,将最终包复制到远程仓库以便分享给其他开发人员。
site(站点)
pre-site - 执行一些生成项目站点前的准备工作。
site - 生成项目站点的文档。
post-site - 执行需完成站点生成的工作,如站点部署的准备工作。
site-deploy - 向制定的web服务器部署站点生成文件。 [2]
Maven生命周期参考:Apache Maven Project [2] ,书籍《Maven In Action》
http://maven.apache.org/download.cgi
下载这个:
maven需要jdk环境,测试是否有环境:打开cmd,输入如下命令
java -version
java
javac
新建文件夹,把刚下载好的复制粘贴进来并且进行解压,我的版本号对不上是因为,在之前就已经下载过maven了。
配置maven环境变量
MV_HOME D:\maven\apache-maven-3.6.2
测试是否安装成功:cmd
mvn -version
maven规范:文件目录:(拿HelloWorld来举例)
maven必须要有一个pom.xml文件
源代码:
public class HelloWorld
{
public String sayHello(){
return "HELLO WORLD!";
}
public static void main(String[] args){
System.out.println("new HelloWorld().sayHello()");
}
}
pom.xml:
内容:
源代码:
<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.0modelVersion>
<groupId>HelloWorldgroupId>
<artifactId>HelloWorldartifactId>
<version>0.0.1-SNAPSHOTversion>
<dependencies>
dependencies>
project>
如何运行此项目:
1.首先我的项目存放位置是:
E:\HelloWorld
2.打开cmd
依次键入
e:
cd HelloWorld
mvn compile
(中途它其实会下载很多maven编译时需要的插件,从远程仓库下载到本地仓库)
本地仓库位置:(默认是在C盘)
C:\Users\windymoon\.m2\repository
运行完成之后,会多出来一个target文件,说明编译成功了。
mvn clean
测试代码的取名也是规范:Test结尾命名方式
HelloWorldTest.java 源代码:
package com.java1234.helloWorld;
import org.junit.Test;
public class HelloWorldTest{
@Test
public void testSayHello(){
HelloWorld helloWorld=new HelloWorld();
String result=helloWorld.sayHello();
System.out.println(result);
}
}
但是现在junit的jar包还没进行引入,所以需要它
去中央仓库找jar包:
http://mvnrepository.com/
进入网址第一步:进入搜索:
把那个框框中的东西复制粘贴进我们pom.xml文件,完成依赖注入就可以了。
测试:
mvn test
mvn package 打包。
对应的就是那个快照版的jar包:
mvn install 把项目安装到本地仓库
有的大公司一个项目有很多子项目,子项目开发完之后,都会把项目安装到本地仓库。
当其他组需要这个子项目的时候,直接就可以引用,install
然而在我install时,它出现了报错:
找到maven的安装目录:
D:\maven(这个是我的。)
打开settings.xml文件,
然后随便点一个版本。