当前位置: 首页 > news >正文

学习maven工具

文章目录

  • 🐒个人主页
  • 🏅JavaEE系列专栏
    • 📖前言:
    • 🏨maven工具产生的背景
    • 🦓maven简介
    • 🪀pom.xml文件(project object Model 项目对象模型)
  • 🪂maven工具安装步骤
    • 两个前提:
    • 下载 maven 服务器
    • 配置 maven (一变量二修改)
      • 在 maven 的服务器解压的文件中找到 conf 文件夹下的`settings.xml 文件`进行修改,如下图所示
  • 🧸在idea中创建maven项目
    • Pom.xml 配置
      • 标签注解
    • Maven 常用命令(可以在cmd窗口中来使用)

🐒个人主页

🏅JavaEE系列专栏

📖前言:

本篇博客主要以介绍maven工具-项目构建、jar包管理、打包

🏨maven工具产生的背景

由于java项目中会使用大量的jar包,而又因为许多jar包之间有相互依赖的关系,造成了导入一个jar包,可能还需要再导入多个与其关联的jar包,故动辄就上百个jar包,不但让人看得眼花缭乱,而且很容易因为jar包找不全,或其依赖的jar包找不全而发生项目报错。程序员们也常常因为项目编译而烦恼,在此背景下:maven横空出世

🦓maven简介

maven工具是一款可以构建项目、管理项目中所需要的jar包以及自动下载其所依赖的jar包,同时具有项目编译、打包、生成自定义jar包、将打包好的jar包/war包安装到maven仓库中,可以在其他项目中调用。

官方语言:Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、测试、打包和发布等工作

🪀pom.xml文件(project object Model 项目对象模型)

Maven 管理的项目的根目录下都有一个 pom.xml 文件。pom.xml 文件指示 Maven 如何工作。 在 pom.xml
文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、 项目依赖的 jar、插件、编译选项等。 一旦在 pom.xml
文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下 载相应的构件

在这里插入图片描述

🪂maven工具安装步骤

两个前提:

必须先安装JDK,由于maven的底层实现是java,所以需要java的运行环境。
由于maven会下载很多插件故此需要良好的网络环境。

下载 maven 服务器

maven 官网:http:// maven.apache. org
在这里插入图片描述
点击 download 进行下载如下图
在这里插入图片描述

配置 maven (一变量二修改)

在系统环境中配置环境变量,在path中配置到Apache-maven文件的bin目录,配置成功后输入命令mvn -version
查看版本如下图:表示 maven 环境配置成功。在这里插入图片描述

在 maven 的服务器解压的文件中找到 conf 文件夹下的settings.xml 文件进行修改,如下图所示

在这里插入图片描述

这里填自己创建的仓库(文件夹)路径
下面配置阿里云 maven 镜像仓库,下载速度更快

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

在这里插入图片描述

🧸在idea中创建maven项目

在这里插入图片描述

在这里插入图片描述
关闭项目,重新点击创建新项目,
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Pom.xml 配置

maven 仓库官网(http://mvnrepository.com/)如下图所示:
在此官网就可以下载自己所需开发 jar 包,继续点击链接打开如下:
在这里插入图片描述
例如下载 servlet jar 包
在 Pom.xml 文件配置 jar 包信息,使用 maven 自动下载 jar 包管理 jar 之间的依赖
(这个是在</dependenci标签下的)

<dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.1</version>
</dependency>

标签注解

<type>:依赖项的 packaging 类型,默认是 jar;
<scope>:依赖项的作用范围,默认是 compile。各个取值及含义如下:
<compile>:编译时和运行时依赖。如果你的项目最终打包为 war 包,则该依赖
包会被拷贝到 war 包中的 lib 目录中。
<provided>:编译项目主代码和测试代码时使用此依赖项,运行时由 jre 或 web
容器提供。如果你的项目最终打包为 war 包,则该 jar 包不会被打包。

Maven 常用命令(可以在cmd窗口中来使用)

  1. compile 编译
  2. clean 删除 target
  3. package 打包(只打包不发送到本地仓库)
  4. install 把项目 install 到本地仓库
  5. test 运行测试代码
    在这里插入图片描述
    在这里插入图片描述
http://www.lryc.cn/news/134804.html

相关文章:

  • 手机直播源码开发,协议讨论篇(三):RTMP实时消息传输协议
  • 【JavaEE基础学习打卡05】JDBC之基本入门就可以了
  • 2023/8/16 华为云OCR识别驾驶证、行驶证
  • 【Java开发】 Mybatis-Plus 07:创建时间、更新时间自动添加
  • 解决vue2项目在IE11浏览器中无画面的兼容问题
  • 信号
  • 产品经理的真实薪资有多少?今天带你看看
  • 《一个操作系统的实现》windows用vm安装CentOS——从bochs环境搭建到第一个demo跑通
  • 线程Thread
  • 如何使用CSS实现一个渐变背景效果?
  • 初始C语言(7)——详细讲解有关初阶指针的内容
  • ArcGIS Pro技术应用(暨基础入门、制图、空间分析、影像分析、三维建模、空间统计分析与建模、python融合、案例应用)
  • RISC-V公测平台发布 · 数据库在RISC-V服务器上的适配评估
  • UE5.2 LyraDemo源码阅读笔记(五)输入系统
  • 线段树详解——影子宽度
  • 使用R语言绘制折线图
  • 无涯教程-Perl - wantarray函数
  • 【gitkraken】gitkraken自动更新问题
  • 《Java Web程序设计》试卷03
  • 怎么查看小程序中的会员信息
  • 网络安全—黑客—自学笔记
  • 深度解读波卡 2.0:多核、更有韧性、以应用为中心
  • 微服务中间件--Eureka注册中心
  • 积跬步至千里 || 矩阵可视化
  • zookeeper详细介绍
  • 面板市场趋势分析:价格上涨势头或将减缓 | 百能云芯
  • JVM性能调优
  • 【全链路追踪】XXL-JOB添加TraceID
  • [Unity]Lua本地时间、倒计时和正计时。
  • 探究HTTP API接口测试:工具、方法与自动化