Maven入门百科

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

我们目前的技术在开发中存在的问题
①一个项目就是一个工程

如果一个项目非常庞大,就不适合继续使用package来划分模块,最好是每一个模块对应一个工程,利于分工协作。
借助于Maven就可以将一个项目拆分成多个工程。

②项目中需要的jar包必须手动“复制”、“粘贴”到WEB-INF/lib目录下

带来的问题:同样的jar包文件重复出现在不同的项目工程中,一方面浪费存储空间,另外也让工程比较臃肿。
借助Maven,可以将jar仅仅保存在“仓库”中,有需要使用的工程“引用”这个文件接口,并不需要真的把jar包复制过来。

③jar包需要别人替我们准备好,或到官网下载

不同技术的官网提供jar包下载的形式是五花八门的。
有些技术的官网就是通过Maven或SVN等专门的工具来提供下载的。

如果是以非正规的方式下载的jar包,那么其中的内容很可能也是不规范的。

借助于Maven可以以一种规范的方式下载jar包。因为所有知名框架或第三方工具的jar包以及按照统一的规范存放在了Maven的中央仓库中。
以规范的方式下载的jar包,内容也是可靠的。

Tips:“统一的规范”不仅是对IT开发领域非常重要,对于整个人类社会都是非常重要的。

④一个jar包依赖的其他jar包需要自己手动加入到项目中

FileUpload组件→IO组件。commons-fileupload-1.3jar依赖于commons-io-2.0.1.jar
如果所有jar包之间的依赖关系都需要程序员自己非常清楚的了解,那么就会极大的增加学习成本。

Maven会自动将被依赖的jar包导入进来。


一、Maven是什么?

Maven是一款服务于java平台的自动化构建工具。
Gradle是Maven的替代品

一般来说传统web工程jar包在项目中,而使用Maven后jar包是放在jar包仓库中的。

二、项目的一键构建

构建

指的是项目从编译、测试、运行、打包、安装,不熟珍格格过程都交给maven进行管理,这个过程称为构建。

一键构建

指的是整个构建过程,使用maven一个命令可以轻松完成整个工作。

三、Maven软件的下载

到Maven的官网下载

下载地址:http://archive.apache.org/dist/maven/maven-3/

选择所需的版本在这里插入图片描述

在这里插入图片描述

四、Maven的安装

在环境变量中把maven的所在路径复制到path中命名为MAVEN_HOME
在PATH中写 %MAVEN_HOME%\bin

测试Maven是否安装成功

在cmd窗口中输入mvn -v ,显示如下图则代表安装成功

在这里插入图片描述
TIPS:
当我们启动一个maven的时候,它回去默认的系统盘的本地仓库找jar包
仓库分三类

	本地仓库、远程仓库(私服)、中央仓库

三类的关系

当启动一个maven工程会从本地仓库找jar包,如果本地没有在联网状态下,会从中央仓库下载;
在公司中启动一个maven工程会从本地仓库找jar包,如果本地没有,会从私服下jar包,如果私服也没有可以从中央仓库下载,也可以上传

更改仓库路径

 <localRepository>仓库路径</localRepository>

maven项目标准目录结构
src/main/java目录——核心代码部分

src/main/resources——配置文件部分

src/test/java目录——测试代码部分

src/test/resources——测试配置文件

src/main/webapp——页面资源,js,css,图片等等

五、Maven常用命令

在cmd中进入项目所属的文件后,输入 mvn clean

clean命令:是把项目中编译好的信息直接删掉
意义:

	在公司中拿到别人的项目接着开发的时候,必须要输入mvn clean

mvn compile:将src main下面的代码放到了target目录下

mvn test:将测试下的java文件变为class文件

mvn package:将项目打包成war包

mvn install:将包安装到本地仓库


清除项目编译信息 编译 测试 打包 安装 发布
clean compile test package install deploy

其中发布命令是需要进行一些配置的,而其他命令则可以直接配置


maven的概念模型图

maven两大特性
1、依赖管理
2、一键构建

在这里插入图片描述


maven的IDEA配置

在这里插入图片描述

在这里插入图片描述

在IDEA中创建一个Maven工程(使用骨架)

在这里插入图片描述
选择这两个选项:quickstart是IDEA为Maven提供好的创建Java工程的骨架
点击Next则为工程的坐标
GroupId:公司和组织的名称
ArtifactId:当前的项目名称

在这里插入图片描述
一路next到最后即可,如果下载太慢,推荐在setting.xml中使用阿里云的镜像下载

<mirrors>
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>
  </mirrors>

放置配置文件的地方
在main文件里新建一个名为resource的文件,并入图展示所做,在里面放配置文件
在这里插入图片描述

在IDEA中创建一个Maven工程(不使用骨架)(推荐)

在这里插入图片描述
不勾选使用骨架

使用骨架创建maven的web工程

在这里插入图片描述
选择 maven-archetype-webapp,点击下一步

当控制台出现BUILD SUCCESS的时候,就代表maven的web工程已经创建完成

但这个时候路径不全,我们需要新建文件夹java,并且右键选择Mark Directory as 选择Sources Root,正式的代码写在java中

导入jar包到web工程

在pom.xml文件中,写如下标签,即可
在这里插入图片描述
如果本地仓库中没有所需的jar包该如何处理呢?

在百度中搜索  maven中央仓库,第一个
在搜索栏中搜索需要的jar包名称,将jar包的坐标复制到pom.xml中

在IDEA中使用maven的情况下,启动tomcat

可以看一看这篇文章

但是由于我们导入的jsp和servlet的jar包和tomcat中的这两个包冲突,所以我们需要为这两个包的导入文件加一个作用域
如:

	<dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.0</version>
      <scope>provided</scope>
    </dependency>
其中的scope标签为作用域
provided为仅仅在写代码的时候起作用,在运行的时候不起作用;
test为仅仅在测试的时候起作用

启动后复制指令台的蓝色url,输入后续地址,则可启动成功

改变环境

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值