如何下载安装配置maven?maven的基本命令有哪些?
发布于 作者:苏南大叔 来源:程序如此灵动~本文主要介绍maven
的下载安装以及使用问题。maven
是java
平台下的包下载管理工具,对标的工具有:pip
/npm
/brew
/componser
等。但是,除了下载第三方jar
包外,maven
还多了很多功能,比如对项目文件的管理以及打包等功能。
苏南大叔的程序如此灵动博客,记录苏南大叔和计算机代码的故事。测试环境:win10
,java@19.0.1
,maven@3.8.6
。
下载安装
虽然maven
作为java
的著名包管理工具,但是和java
并不是一家的。所以,两者并不集成在一起,需要分开安装。而且java
并不需要maven
的存在,而maven
需要java
的存在。
java
下载地址:
maven
下载地址:
下载个压缩版,解压即可。
忽然发现:maven
貌似只有windows
的版本...
配置环境变量
maven
在配置环境变量的时候,叫做m2
。在我的文档里面找配置文件的时候,也叫m2
。
设置环境变量M2_HOME
,同时修改PATH
路径,增加%M2_HOME%/bin
。
网上的教程里面可能会同时提到一个叫做MAVEN_HOME
的环境变量,那个是历史上第一版maven
的叫法。后续的v2
和v3
,都叫做M2_HOME
。
检测版本
在命令行里面,就不叫maven
了,改名叫mvn
。
mvn --version
模版生成maven
项目
mvn archetype:generate
官方文档:
https://maven.apache.org/archetype/index.html
下面的命令里面,生成一个以maven-archetype-webapp
(id
654号)为模版的maven
项目。以下命令层层递进,命令越长越简单。
mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=RELEASE
mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=RELEASE -DgroupId=com.sunan.test -DartifactId=test -Dversion=1.0-SNAPSHOT
推荐使用这个命令,最简单。选用的是最常见的maven-archetype-webapp
模版,作为javaweb
的测试来说已经足够了。
mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=RELEASE -DgroupId=com.sunan.test -DartifactId=test -Dversion=1.0-SNAPSHOT -DinteractiveMode=false
安装新的jar
包
说时候 mvn
安装一个jar
包还是稍稍麻烦的。对比npm
、pip
等等来说,就显得mvn
比较弱智。需要先修改pom.xml
,写入对应的dependency
依赖。
对应的依赖项目的xml
语句,在下面的网站上面找到合适的包的时候,页面上会显示的,复制到pom.xml
里面吧。
然后执行命令:
mvn install
清除和打包
针对项目的代码进行管理打包,有几个常用命令。当然,前提是对应的项目是基于maven
构建的项目,标准是根目录下面有个pom.xml
配置文件。
这个maven
的pom.xml
类似于node
的package.json
文件,记录了项目信息和依赖包信息。同时还可以定义打包的附加命令等。当然,本文里面也不做深入表述。仅仅记录基本的常见命令。
命令 | 说明 |
---|---|
mvn archetype:generate | 从模版生成 |
mvn install | 按照pom.xml 安装新的jar包 |
mvn clean | 清除target目录及里面的文件 |
mvn package | 生成target目录及里面的文件 |
一定要在pom.xml
所在的位置,执行上述mvn
命令。
更多命令的使用方式,可以参考官方文档。
mvn package
命令执行之后,得到的target/<buildname>.war
文件,就是可以部署在<tomcat>/webapps
的文件。
这里需要注意的就是:.war
复制到webapps/
下面之后,一定要保持不动,不能删除。它会被自动解压,然后可以通过浏览器访问/<name>/
的形式使用。
结束语
更多的maven
经验文字,请参考:
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。