maven学习笔记 maven的安装和配置

2022-05-05 19:11:00 浏览数 (1)

maven是什么

maven是一个Java项目管理工具。maven提供了大量命令行工具,可以方便的管理java项目建立、开发、测试、打包、生成、部署等各个生命周期的操作,极大的方便开发者。同时,maven还提供了统一的项目结构,简化了项目的处理流程。

maven是一个Java项目的依赖管理工具。当项目中使用了多个第三方包的时候,传统的手工导入方式就不能胜任了。各种第三方包的依赖、冲突,都会导致项目编译错误。利用maven,可以一次性解决所有问题,让依赖管理变成配置文件的简单修改。

maven还是一个开放的插件平台。maven提供了大量插件,官方的和各个第三方包的。利用这些插件,可以更大程度上的简化项目开发的难度,解放开发者的生产力。

maven的安装

maven是基于java编写而成的,需要JRE或者JDK才能运行。所以首先需要正确安装JDK并配置好环境变量。安装和配置JDK可以参考我我的这篇文章Windows平台Java开发环境的搭建。

下载maven二进制包

对于Linux平台,安装mzven非常容易。利用各个发行版提供的包管理器,只需要一条命令就可以安装maven了。例如Debian和Ubuntu,输入以下命令:

代码语言:javascript复制
$ sudo apt install maven

Fedora则需要输入:

代码语言:javascript复制
$ sudo dnf install maven

ArchLinux需要输入:

代码语言:javascript复制
$ sudo pacman -S maven

对于Windows平台,稍稍有些麻烦。首先到maven下载页面找到Binary zip archive这样的字样,然后点击右面的link即可下载。目前maven的版本是3.3.9。 下载完毕之后将其解压,放置到你想放置的位置。

配置环境变量

下载好maven之后,还需要配置环境变量。对于Linux,不需要配置环境变量,包管理器会自动帮你完成这些设置。Windows平台打开此电脑->属性->高级系统设置->环境变量,然后添加一个M2_HOME,值为你放置maven程序的位置。然后在PATH变量中增加一个%M2_HOME%bin的值即可。需要注意多个值之间需要添加英文分号,不要搞错了。

配置好环境变量之后,就可以测试一下maven是否安装正确。输入以下命令,如果出现了maven版本号等信息,说明安装正确。否则需要重新检查是否下载了正确的maven包并配置正确环境变量。

代码语言:javascript复制
$ mvn -v

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47 08:00)
Maven home: D:devtoolsapache-maven
Java version: 1.8.0_72, vendor: Oracle Corporation
Java home: D:Program FilesJavajdk1.8.0jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos"

maven的配置

找到maven主目录,也就是M2_HOME环境变量所对应的目录,然后进入conf文件夹,会发现有settings.xml和toolchain.xml两个配置文件。我们主要配置settings.xml文件。XML文件的编辑器我推荐使用sublime或者notepad ,或者Eclipse等IDE自带的XML编辑器也可以。Windows自带的记事本应用没有语法高亮等,编辑起来不太方便。

打开settings.xml文件,会发现其中有大量的注释,说明了每个片段的意义和用法。因此这里只简单说明一下。

节点名

意义

默认值

localRepository

maven包的下载位置

用户主目录下的.m2/repository

interactiveMode

是否启用交互模式

true

offline

在构建项目的时候是否应该离线

false

pluginGroups

配置插件的搜索范围的,下面还有pluginGroup节点

proxies

指定maven下载包的时候可以使用的代理,如果有多个会使用第一个

servers

指定maven使用的服务器

mirrors

指定maven下载包使用的镜像服务器

profiles

指定maven使用的一个或多个配置文件

activeProfiles

指定对于所有项目构建的配置文件

下面是我的配置文件,去掉了注释。设置默认的项目构建版本为JDK8,并且在构建的时候同时下载依赖项的文档和源代码。本来用的是开源中国的镜像,但是好像很早以前开源中国的镜像就挂了。所以这里改成了阿里爸爸的了。

代码语言:javascript复制
<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <localRepository>D:devtoolsm2_repo</localRepository>
    <offline>false</offline>
    <interactiveMode>true</interactiveMode>
    <pluginGroups></pluginGroups>
    <proxies></proxies>
    <servers></servers>
    <mirrors>
        <mirror>   
            <id>alimaven</id> 
            <name>aliyun maven</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
    </mirrors>
    <profiles>
        <profile>
            <id>jdk-1.8</id>
            <activation>
                <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>
                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
                <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
                <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
                <downloadSources>true</downloadSources>
                <downloadJavadocs>true</downloadJavadocs>
            </properties>
        </profile>
    </profiles>
    <activeProfiles>
        <activeProfile>jdk-1.8</activeProfile>
    </activeProfiles>
</settings>

0 人点赞