专栏首页品茗ITWeb基础配置篇(二): Maven配置及使用
原创

Web基础配置篇(二): Maven配置及使用

Web基础配置篇(二): Maven配置及使用

一、概述

Maven是一个软件开发管理工具,主要管理工作是:依赖管理,项目一键构建。

以前用过ant,很不方便,maven比较简单易用。

然后后面又来了个gradle,貌似比maven更好用,我这里不会,也不讲,就目前来说,maven的用户量还是比较大的。

品茗IT-首发

二、Maven配置

如果只是eclipse使用maven,就不需要配置maven了,eclipse自带maven插件。想要在命令行使用,需要单独配置maven。

2.1 下载

maven官方网站

先下载maven,比如当前的maven版本是3.6.0。

http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.zip

解压下载文件:

在这里插入图片描述

Linux可以使用wget下载:

wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz

2.2 Windows配置环境

配置maven的环境变量M2_HOME,例如我的地址是E:\DevSoft\maven\apache-maven-3.6.0:

在这里插入图片描述

配置Path:在Path中加入:%M2_HOME%\bin, 注意变量前后后的分号。

mvn -v或者mvn -version测试:

PS C:\WINDOWS\system32> mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47+08:00)
Maven home: E:\DevSoft\maven\apache-maven-3.6.0\bin\..
Java version: 1.8.0_151, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk1.8.0_151\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
PS C:\WINDOWS\system32>

2.3 Linux配置环境

下载maven到/usr/local下的maven目录,目录自己建,自己找。

wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz

解压下载的apache-maven-3.6.0-bin.tar.gz

tar -xvf apache-maven-3.6.0-bin.tar.gz

配置环境变量,需要修改/etc/profile:vi /etc/profile

export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.0
PATH=$MAVEN_HOME/bin:$PATH

刷新配置:source /etc/profile

mvn -v或者mvn -version测试即可。

三、Maven使用

3.1 settings.xml

settings.xml对于maven来说相当于全局性的配置,用于所有的项目。在maven2中存在两个settings.xml:

一个位于maven2的安装目录conf下面,作为全局性配置。对于团队设置,保持一致的定义是关键,所以maven2/conf下面的settings.xml就作为团队共同的配置文件。保证所有的团队成员都拥有相同的配置。

另外一个settings.xml就作为本地配置。需要特殊的自定义设置,如用户信息等可以配置在这个文件中。默认的位置为:user.dir/.m2/settings.xml目录中({user.dir} 指windows 中的用户目录。

配置详情这里就不详说了,对于工作后的你来说,这个settings.xml一般都是从老员工那儿拷过来会比较好,或者你必须要配置,那就不是三言两语说的清了。

3.2 pom.xml

pom.xml主要描述了项目的maven坐标,依赖关系,开发者需要遵循的规则,缺陷管理系统,组织和licenses,以及其他所有的项目相关因素,是项目级别的配置文件.

这个文件里常用到下面几个概念:

  • groupId: 一般是域名倒写,其实是瞎写的,规范一点是这样的。
  • artifactId:一般是2级域名,其实是瞎写的,规范一点是这样的。
  • packaging: 打包成啥
  • dependencies:依赖的jar包。
  • parent: 父maven项目。
  • dependencyManagement:依赖的管理,一般用它来管理依赖,然后子项目在dependencies中依赖父pom管理的依赖的时候可以不写版本号。
  • build: 构建相关
  • modules: 模块管理使用,在父项目中定义子项目模块。

3.3 Eclipse使用Maven

eclipse里面,run as时候会出现maven操作。

在这里插入图片描述

一般来说,用不了那么多的,用Maven install和Maven clean已经够用了。

Maven install: 对项目进行编译、将项目打成war包并且发布到本地仓库。

Maven clean: 清除target目录下的之前打好的jar包或者是war包;

Maven build : 重新对该maven项目进行打包,这里需要手动的输入打包的命令 -X package

Maven build... : 对Maven build重新配置命令。

3.4 Maven命令行使用

命令行是没有 mvn build这个命令的。

只有mvn install 和 mvn package

  • mvn install 是将你打好的jar包安装到你的本地库中,一般没有设置过是在 用户目录下的 .m2\下面。
  • mvn package 只是将你的代码打包到输出目录,一般的是 target下面。
  • mvn deploy 可以将打包文件发布到远程仓库。
  • mvn clean package依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段。
  • mvn clean install依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段。
  • mvn clean deploy依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9个阶段。

主要区别如下,

  • package命令完成了项目编译、单元测试、打包功能,但没有把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库
  • install命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库
  • deploy命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库

打包一个项目时,需要进入项目所在位置,然后和pom.xml同级使用命令,如下图。

在这里插入图片描述

本篇就只讲这么多了,这里只能算是一个大概,细节东西需要根据事实情况来分析,这里就不讲了。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Web基础配置篇(二): Maven配置及使用

    然后后面又来了个gradle,貌似比maven更好用,我这里不会,也不讲,就目前来说,maven的用户量还是比较大的。

    品茗IT
  • SpringBoot入门建站全系列(三)Mybatis操作数据库

    Mybatis插件:比较时髦,比较适合sql复杂,或者对性能要求高的应用,因为sql都是自己写的。

    品茗IT
  • SpringBoot入门建站全系列(一)项目建立

    个人对SpringBoot的理解:就是一Spring大杂烩,把Spring的一些组件,或者跟Spring有联系的组件整合在一起,方便使用。

    品茗IT
  • 只需五分钟-用Maven快速搭建Spring Cloud微服务

    如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135...

    java架构师
  • Linux配置maven环境

    注:http://mirror.bit.edu.cn为北京理工大学开源软件镜像服务站

    华创信息技术
  • Web基础配置篇(二): Maven配置及使用

    然后后面又来了个gradle,貌似比maven更好用,我这里不会,也不讲,就目前来说,maven的用户量还是比较大的。

    品茗IT
  • maven安装使用修改镜像仓库

    wget http://mirrors.advancedhosters.com/apache/maven/maven-3/3.6.1/binaries/apac...

    bboysoul
  • Maven系列第2篇:安装、配置、mvn运行过程详解

    我们要写java代码,需要安装jdk,那我们要使用maven,也类似,需要在我们的机器中安装maven。

    路人甲Java
  • Maven快速入门(一)Maven介绍及环境搭建

    做开发的程序员都知道,在系统开发需要各自各样的框架、工具。其中有一种工具不管你是初级程序员还是高级程序员都必须熟练掌握的,那就是项目管理工具(maven、ant...

    架构师精进
  • 《Maven进阶》1.maven 项目生命周期与构建原理

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://louluan.blo...

    亦山

扫码关注云+社区

领取腾讯云代金券