Maven简介安装

Stella981
• 阅读 559

什么是 Maven

Maven 是一个由 Apache 公司推出的一个管理项目的工具,它包含了一个项目对象模型,一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期阶段中插件目标的逻辑

Maven 能解决什么问题

  1. 管理 jar 包,防止 jar 包冲突
  2. Maven 也能帮助编译 Java 文件
  3. 用于单元测试
  4. 项目打包

Maven下载及配置

  • 进入官网Maven ,点击 Download。 Maven简介安装

或者搜索maven即可进入官网,点击Download下载zip文件解压即可

  • 配置
    1. 在环境变量中创建 MAVEN_HOME 并添加主路径
    2. 在 path 中添加 %MAVEN_HOME%\bin 即可
  • 测试,在 com 中输入 mvn -v

仓库机制

maven 工程中的 jar 包是通过坐标来寻找的,首先会在系统盘中找本地仓库中的 jar 包,如果没有需要的包会在联网的情况下从中央仓库中下载(中央仓库有所有的 jar 包)

公司会有自己的远程仓库(私服),在同一局域网即可,如果也没有同样会在中央仓库中下载

Maven 项目标准目录结构

  • src/main/java 核心代码
  • src/main/resources 配置文件
  • src/test/java 测试代码
  • src/test/resources 测试配置文件
  • src/main/webapp 页面资源(js,jsp,css,图片等)

Maven 命令

  1. mvn clean 清理之前的编译信息
  2. mvn compile 编译文件放在 target 目录中
  3. mvn test 编译文件和测试代码
  4. mvn package 编译打包(代码和测试都编译)
  5. mvn install 编译打包并放至本地仓库

Maven 概念模型

  • 项目对象模型(pom.xml)

    放置了项目自身信息,项目运行时需要的 jar 包信息,项目运行环境信息(jdk,tomcat)

  • 依赖管理模型

    放置了 jar 包的坐标

jar 包坐标

一个 jar 包包含3个以上基本信息

<dependencies>
    <dependency>
        <!--公司组织名称-->
        <groupId>javax.servlet.jsp</groupId>
        <!--项目名-->
        <artifactId>jsp-api</artifactId>
        <!--版本号-->
        <version>2.0</version>
    </dependency>
</dependencies>

IDEA 加入 Maven

在 Settings 中搜索 maven 找到路径即可,在 Runner 中输入 -DarchetypeCatalog=internal 可以在本地找 jar 包

Maven 本地仓库路径修改

在 conf 中的 settings.xml 中找到 <localRepository>/path/to/local/repo</localRepository>

在其后追加一行并加上路径

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
kenx kenx
2年前
Maven 基础标签之版本管理和冲突解决
前言我们在做java项目的时候由于jar包太多,我们就需要使用maven做项目管理,管理项目的jar包依赖,包括打包上线maven基础Maven是一个项目管理工具,主要用于项目构建,依赖管理,项目信息管理每个maven项目根目录都会有一个pom.xml文件,负责项目构建,依赖管理在这个文件里面,你只需要添加相应的jar包坐标配置,maven就会自动
Stella981 Stella981
2年前
Maven项目使用打包时使用本地jar包库
在使用maven管理项目时,有时候我们可能会使用一些第三方的jar包依赖库,但是这些jar包依赖库又没有在共有的maven仓库。通常只能下来放到本项目的lib目录下。但是我们打包时如果不做处理,那么打包后的fatjar中不会有lib文件夹中的相关jar包。打包后无法运行起来,因此需要做特殊处理,让maven打包时能够把使用到外部jar打进去。主要就是在
Easter79 Easter79
2年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
2年前
Idea下maven的配置和使用
  maven的主要功能就是依赖管理,jar包仓库。和C中的NuGet仓库差不多。另外也提供打包构建,启动插件等功能。下面主要讲一下,在使用Idea开发时,maven的配置和使用。maven的安装和配置  maven(3.6.1)的下载地址:https://idlestudio.ctfile.com/fs/14960372382
Wesley13 Wesley13
2年前
35岁是技术人的天花板吗?
35岁是技术人的天花板吗?我非常不认同“35岁现象”,人类没有那么脆弱,人类的智力不会说是35岁之后就停止发展,更不是说35岁之后就没有机会了。马云35岁还在教书,任正非35岁还在工厂上班。为什么技术人员到35岁就应该退役了呢?所以35岁根本就不是一个问题,我今年已经37岁了,我发现我才刚刚找到自己的节奏,刚刚上路。
Stella981 Stella981
2年前
Maven总结
何为maven?1.Maven主要是基于Java平台的项目构建,依赖管理和项目信息2.Maven是优秀的构建工具,跨平台,消除构建的重复,抽象了一个完整的构建生命周期模型,标准化构建过程3.管理分布的项目信息,版本控制系统,轻松获取项目文档,测试报告,静态分析报告,版本日志报告等4.极限编程(XP)
金旋 金旋
2个月前
尚硅谷新版Maven(5小时快速上手)
//下仔のke:https://yeziit.cn/15061/Maven是一个项目管理工具,主要用于Java项目的构建和管理。它提供了一组标准化的工具,用于自动化项目的构建、报告和文档生成等过程。Maven的主要特点是其项目对象模型(POM),这是一个描