maven


Apache软件基金会提供的项目自动化构建和项目管理软件。基于项目对象模型(缩写:POM)概念,Maven利用 一个中央信息片断能管理一个项目的构建、报告和文档等步骤。

安装过程

1、下载网址: https://maven.apache.org/download.cgi.
在这里插入图片描述点击链接下载;

2、配置环境变量
系统变量:MAVEN_HOME = E:\maven\apache-maven-3.8.2
系统变量:path = %MAVEN_HOME%\bin

3、然后win+R 运行cmd 输入 mvn -version,如图所示则配置成功
在这里插入图片描述

配置settings文件

1、在E:\maven\apache-maven-3.8.2\conf下可以找到settings文件
在这里插入图片描述
maven默认的仓库:
在这里插入图片描述
2、修改路径
在这里插入图片描述
3、保存,在IDEA中创建新的Project

创建maven工程

全局
在这里插入图片描述

在这里插入图片描述
直接创建,无需勾选
在这里插入图片描述

在这里插入图片描述

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>
<groupId>com.mycompany.app</groupId>
<artifactId>myapp</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
</properties>
</project>

groupId:公司所做的项目的名称
artifactId:模块的名称
version:版本号
groupId + artifactId + version = 坐标

编译代码

cd myapp
mvn compile
编译后产生target目录,里面存放的就是编译后的字节码文件

执行单元测试

mvn test

在pom.xml添加对junit的依赖
<dependencies>
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
</dependency>
</dependencies>

mvn clean
清除target

mvn package
打包

mvn install
发布到本地仓库中

修改本地仓库位置

默认位置在操作的系统的~/.m2文件夹中,修改方式如下:

  1. 取消mavenhome/conf/settings.xml配置文件中的注释的该行代码:
    localRepository> /path/to/local/repo </localRepository
  2. 将其中的路径修改为自己希望的路径
    localRepository> J:/maven/repo </localRepository
  3. 并将settings.xml文件拷贝一份到J:/maven目录中

maven查找依赖的顺序

本地仓库→ 私有仓库 → 中央仓库

scope

compile——编译(默认值,在编译、打包时使用)
provided——编译和测试时使用的依赖,打包时不加入,例如servlet-api.jar
runtime——运行时依赖,编译时不依赖,例如mysql.jar
test——只有测试时依赖,编译和打包时不使用,例如junit.jar

依赖传递和冲突

• 依赖级别相同时,在dependency前面的会使用
• 依赖级别不相同时,依赖路径短的会使用
• 依赖传递只会传递compile级别的包
• 排除依赖

<dependency> 
<groupId>org.apache.struts</groupId> 
<artifactId>struts2-core</artifactId> 
<version>2.2.31</version> 
<exclusions> 
<exclusion> 
<groupId></groupId> 
<artifactId></artifactId> 
</exclusion> 
</exclusions> 
</dependency>

其他配置

<properties>
    <junit.version>4.12</junit.version>
</properties>
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
    </dependency>

修改私有仓库地址

在项目中pom.xml:
<repositories>
    <repository>
        <id>local</id>
        <name>nexus_server</name>
        <url>http://192.168.1.100:8088/nexus/content/groups/public/</url>
    </repository>
</repositories>
修改全局.m2/settings.xml:
<mirror>
    <id>mirrorId</id>
    <mirrorOf>*</mirrorOf>
    <name>Human Readable Name for this Mirror.</name>
    <url>http://xxxxx</url>
</mirror>

idea集成tomcat插件

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
</plugin>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

单眼皮女孩i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值