maven是什么?maven入门及常用命令

一、maven是什么?

Maven就是项目管理工具,用来构建项目的。也就是清理、编译、测试、运行、打包、安装整个过程都交给maven管理,整个过程就是构建。

二、maven安装与配置

1、官网下载

官网下载:http://maven.apache.org/download.cgi
然后解压(gz包或者zip包)到最好没有中文没有空格的路径。目录结构如下:
在这里插入图片描述

2、配置环境变量

Maven 本身就是基于Java 写的,所以在安装配置 Maven 之前,有必要将 Java 的运行环境安装配置好,jdk安装好。

Windows环境下:
配置内容同 JDK 的配置内容一样,也是两部分:一部分是在系统环境变量或者用户环境变量中配置一个 MAVEN_HOME;另一部分也是将 Maven 里面的 bin 目录追加到 Path 环境变量后面。
在这里插入图片描述
在这里插入图片描述

3、测试安装是否成功:

win+r cmd 命令行 输入mvn –version 或者maven –v
查看安装的maven信息及jdk信息,成功打印说明配置成功。

三、 maven目录结构

(1)bin:maven运行脚本,命令。
在命令行输入任何一条 mvn 命令时,实际上就是在调用这些脚本。不带cmd后缀的命令是 UNIX 平台的 shell 脚本,带cmd的是基于 Windows 平台的脚本。
mvnDebug文件比mvn文件多了一条 MAVEN_DEBUG_OPTS 配置,其作用就是在运行 Maven 时开启 debug,以便调试 Maven 本身。m2.conf 文件,这是 classworlds 的配置文件。

(2)boot:该目录只包含一个文件,plexus-classworlds-2.2.3.jar (plexus-classworlds是一个类加载器框架,maven使用该框架加载自己的类库)。
(3)conf:配置文件 setting.xml,修改该文件就可以在机器上全局的制定maven的行为。但一般情况下,更倾向于复制该文件到~(用户目录)/.m2/目录下,然后修改该文件,在用户范围内制定maven的行为。
(4)lib:包含maven运行时所需要的java类库,包括第三方的依赖类库。用户可以在这个目录中找到 Maven 内置的超级 POM:
在这里插入图片描述
在这里插入图片描述

(5)LICENSE.txt:记录了 Maven 使用的软件许可证Apache License Version 2.0。
(6)NOTICE.txt:记录了maven包含的第三方软件。
(7)README.txt:记录了maven的简要介绍。包括安装需求及如何安装的简要指令等。

四、maven优点

  • Maven将项目构建过程标准化,每个阶段使用一个命令完成,一键构建,无需安装eclipse和tomcat;
  • 有一个清晰的项目结构;
  • 纯java语言开发,跨平台的,可以在window、linux、mac上使用;
  • 可以将大型项目拆分为模块开发,提升开发效率;
  • Maven的依赖管理。Maven的依赖管理,其实就是管理jar包的过程。本地仓库统一管理jar,使jar与项目分离,减轻项目体积。

五、maven常用命令

  • mvn clean 清理,编译后的目录;
  • mvn compile 编译;只编译main目录,不编译test中代码;
  • mvn test-compile 编译test麻目录中代码;
  • mvn test 运行test里边代码测试;
  • mvn package 打包 ;
    java项目打成jar包
    web项目打成war包
  • mvn install 发布项目到本地仓库,在本地Repository中安装jar,供其他工程使用;
  • tomcat run 一键构建项目
  • mvn site 生成项目的相关文档和生成文档相关的元素,包括name,url,和description等。

六、maven命令的生命周期

1、clean 生命周期:清理项目。
2、default 生命周期:构建项目:
compile、test-compile、test、package、install
3、site生命周期:建立和发布项目站点,生成项目描述的文档静态页。

不同生命周期的命令可以一起使用,eg:mvn clean compile
但是同一生命周期的命令执行后面的,就相当于把前边的都执行一遍了 eg:mvn install就相当于把前边的都执行了。
执行顺序: compile < test-compile < test < package < install;

七、maven 配置启动tomcat版本

maven默认使用的tomcat6,可以通过web.xml中配置Tomcat高版本插件,eg:tomcat7 ,注意,maven build 时命令变成:tomcat7:run 。

<build>
       <plugins>    
          <!-- 配置Tomcat插件 ,用于启动项目 -->
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <!--如果不设置,则默认为猫的自定义端口,项目路径为http://localhost:默认端口/项目名  -->
            <configuration>
            <!--如果端口号改为8088:那么访问的时候路径的端口就要写成8088  -->
                <port>8088</port>
                <!-- 如果设置为/,则项目了路径为http://localhost:端口号 /-->
                <!-- 如果设置为/lw,则项目了路径为http://localhost:端口号/lw -->
                <path>/</path>
            </configuration>
        </plugin>      
      </plugins>
  </build>

八、scope依赖作用域

也可以称作依赖范围:maven中的的依赖,会根据场景和所处阶段发生变化。scope属性有五种:
在这里插入图片描述
system:不推荐使用,使用system作用域不会去本地仓库寻找依赖,要指定本地绝对路径。

九、maven相关问题

maven+tomcat 热部署 可参考:maven+tomcat 热部署

如何创建maven项目,请参考:创建maven项目

关于maven pom.xml配置,请参考:maven pom.xml配置

maven settings.xml配置,请参考:maven settings.xml配置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

一只IT攻城狮

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

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

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

打赏作者

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

抵扣说明:

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

余额充值