什么是maven
maven是服务于java平台的模块化构建工具
一.maven核心
1.依赖管理 对jar包的管理
2.项目构建
二、 maven 的下载配置和安装
1、maven下载
https://maven.apache.org/download.cgi
下载之后进行解压,配置环境变量
M2_HOME
D:\javasoft\apache-maven-3.6.1
在path中添加%M2_HOME%\bin
然后运行cmd mvn -v
到此maven环境配置成功
2、配置maven的本地仓库
在D盘下创建 repository 文件夹
找到maven解压包
D:\javasoft\apache-maven-3.6.1\conf 文件夹下的 settings.xml 文件 打开 找到
添加本地仓库路径 保存
配置中央仓库镜像,用于远程下载jar包
mirrors 标签下加入
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
新创建的maven仓库文件夹里面没有东西,当集成eclipse 创建maven项目之后会自动下载所需要的jar包
指定maven用指定的jdk版本编译项目,在profiles 标签里加入以下代码
<profile>
<id>jdk‐1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
eclipse集成maven具体请百度,很简单
3、maven的常用命令
1、 mvn clean 命令 清理上次打包所生成的.class文件 (将项目中target目录下的文件进行清理掉)
2、mvn commpile 编译,将项目从新进行编译
3、mvn test 单元测试: 执行项目中根目录经下的单元测试类(单元测试类必须 以 Test结尾) XXXTest.java
4、mvn package 打包:将项目打成一个war包(打包在项目的target根目录下)
5、mvn install 安装 打包到本地仓库
创建一个maven项目,更改jdk版本
在pom.xml中添加
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
然后 点击 file -》 maven-》update project
四、依赖冲突
排除依赖 在所不用的依赖版本加入 exclusion
版本锁定 指定项目中所依赖的版本
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-bean</artifactId>
<version>4.2.4.RELEASE</version>
</dependency>
</dependencies>
</dependencyManagement>
五、Maven的目录结构
Bin: 包含了运行mvn的命令脚本
其中mvn是基于UNIX平台的shell脚本,mvn.bat是基于Windows平台的bat 脚本。在命令行输入任何一条mvn命令时,实际上就是在调用这些脚本。
boot:该目录只包含一个文件,以maven 3.0为例,该文件为plexus-classworlds-2.2.3.jar。plexus-classworlds是一个类加载器框架,相对于默认的java类加载器,它提供了更丰富的语法以方便配置,Maven使用该框架加载自己的类库。
conf: 该目录包含了一个非常重要的文件settings.xml。直接修改该文件,就能在机器上全局地定制Maven的行为。
lib: 该目录包含了所有Maven运行时需要的Java类库。
六、设置http代理
公司基于安全因素考虑,要求你使用通过安全认证的代理访问因特网。这种情况下,就需要为Maven配置HTTP代理,才能让它正常访问外部仓库。
在maven 的conf文件夹下找到setting.xml文件打开
在setting文件中加入代理配置
proxies下可以有多个proxy元素,如果声明了多个proxy元素,则默认情况下第一个被激活的proxy会生效。这里声明了
一个id为my-proxy的代理,active的值为true表示激活该代理,protocol表示使用的代理协议,这里是http。当然,最重
要的是指定正确的主机名(host元素)和端口(port元素)。上述XML配置中注释掉了username、password、
nonProxyHost几个元素。当代理服务需要认证时,就需要配置username和password。nonProxyHost元素用来指定哪些主机
名不需要代理,可以使用“|”符号来分隔多个主机名。此外,该配置也支持通配符,如*.google.com表示所有以
google.com结尾的域名访问都不要通过代理。