Maven-高效的Java项目构建与管理工具(含Maven详细安装与配置过程)

Maven

什么是Maven?

正如题目所说,Maven就是一款高效的Java项目构建与管理工具,基于项目对象模型(POM)概念,利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。是Apache软件基金会的一个开源项目

Maven的作用

⭐依赖管理

依赖管理的出现极大的解放了Java项目Jar包导入的繁琐流程与重复工作量,你只需在Maven项目的pom.xml文件(下面图片项目结构的最后一个文件)中引入相关依赖即可

⭐统一项目结构

Maven提供了统一的Java项目结构,你不必担心不同编译器所带来的项目结构不兼容的困扰

⭐ 高效项目构建

Maven提供了一系列项目构建指令Maven生命周期,由插件执行),使项目构建快速高效简单

依赖仓库

分为本地仓库,中央仓库与远程仓库(私服)

本地仓库:安装的Maven目录的依赖仓库文件夹,一般配置为mvn_repo,后面会配置

中央仓库:全球总仓库,几乎包含所有Jar包(国外网站,速度慢,一般用国内网站即可)

远程仓库(私服):由公司自己搭建的私有仓库,例如阿里巴巴私服

依赖获取:本地仓库有的直接使用即可,没有则先在远程仓库获取远程如果还没有再考虑中央仓库

Maven的安装与配置

安装

1.下载

进入Maven官网Maven – Download Apache Maven下载即可

2. 解压

下载好的文件解压到到一个没有中文的目录中即可有中文可能会报错

解压后的目录

bin:存放可执行文件

conf:存放配置文件

lib:存放Maven依赖jar包

配置

1.创建本地仓库目录

Maven文件中新建文件夹mvn_repo即可

2.配置本地仓库目录

打开conf/settings.xml文件

添加 <localRepository>这里填你刚刚创建本地仓库文件地址</localRepository>

我的是 <localRepository>D:\apache-maven-3.6.1\mvn_repo</localRepository>,仅作参考

 3.配置阿里云私服地址

还是在conf/settings.xml文件

将下面的复制到指定位置即可


          <mirror>
            <id>nexus-aliyun</id>
            <mirrorOf>central</mirrorOf>
            <name>Nexus aliyun</name>
            <url>https://maven.aliyun.com/repository/public</url>
        </mirror>

 

4.配置环境变量

先复制maven的目录地址:D:\apache-maven-3.6.1(这是我的,文件夹里复制自己的)

 打开系统高级设置,直接windows搜索即

点击环境变量

按下面步骤

1:点击新建

2:填好

3.确定

 

下面一样新建,填好,在一路确认就完成了环境变量配置

测试

win+r键打开输入   cmd   进入命令提示符 输入

mvn -v

出现版本号

代表Maven 安装成功!!!

Idea配置Maven环境

配置全局环境

1.关闭项目

 2.打开设置

 3.配置好自己的地址

4. 改为自己JDK版本

5.改自己版本

 配置完毕!!!

 Idea创建Maven项目

New Project            然后按下面配置即可

Idea导入Maven项目

 一路照做即可

依赖管理

依赖配置

引入项目依赖即引用坐标即可

如何引入依赖

cv工程师上线!!!

百度你想要的依赖或者进入Maven Repository: Search/Browse/Explore (mvnrepository.com)

搜索依赖(这里是logback)

找用的人多的版本就行 

 

直接cv到pom.xml的文件里就完成

 依赖传递

就是依赖的继承

依赖范围 

依赖的作用范围

Maven生命周期

差不多就是项目构建的流程

生命周期全过程(5个红色的是常用的)

如何执行生命周期(构建项目)

Idea内置工具,或命令行敲命令

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/204593.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站测试都要测试哪些?如何进行测试?

1 UI测试 看页面是否美观养眼(包括页面的布局是否合理&#xff0c;策划是否舒服美观&#xff0c;页面长度是否合理&#xff0c;前景色与背景色是否搭配&#xff0c;页面风格是否统一&#xff0c;色调是否适合人眼&#xff0c;会不会太刺眼&#xff0c;字体大小是否合适&#x…

Java多线程:代码不只是在‘Hello World‘

Java线程好书推荐 概述01 多线程对于Java的意义02 为什么Java工程师必须掌握多线程03 Java多线程使用方式04 如何学好Java多线程写在末尾&#xff1a; 主页传送门&#xff1a;&#x1f4c0; 传送 概述 摘要&#xff1a;互联网的每一个角落&#xff0c;无论是大型电商平台的秒杀…

IntelliJ IDEA图形安装教程

IntelliJ IDEA图形安装教程 之前开始Java程序&#xff0c;一直用的eclipse&#xff0c;觉得还可以。一直听说IntelliJ IDEA比eclipse好用很多&#xff0c;但因为比较懒&#xff0c;也没有学习使用。机缘巧合下&#xff0c;尝试用了下&#xff0c;顿时有种相见恨晚的感觉&#…

【问题思考】泰勒公式证明题如何选展开点?【对称美】

我的证明题水平很烂&#xff0c;这个纯属让自己有一个初步的理解&#xff0c;恳请指正&#xff01; 问题 我们可以看到这里有两种展开方式&#xff08;注意&#xff1a;x0叫展开点&#xff09;&#xff0c;分别是正确的做法&#xff0c;在x0展开&#xff0c;然后将0和a代入fx中…

Windows系统上如何搭建Linux操作系统

一、准备工作 1&#xff0c;VMware安装包 2&#xff0c;Centos IOS镜像 3&#xff0c;finalshell安装包 阿里云盘下载地址&#xff1a; https://www.alipan.com/s/uSQsWn15E3W 二&#xff0c;VMware安装 1&#xff0c;新建虚拟机 2&#xff0c;选择下一步 3&#xff0c;…

如何在Linux上部署1Panel运维管理面板并远程访问内网Web端管理界面

文章目录 前言1. Linux 安装1Panel2. 安装cpolar内网穿透3. 配置1Panel公网访问地址4. 公网远程访问1Panel管理界面5. 固定1Panel公网地址 前言 1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器&#xff0c;包括主机监控、…

Course1-Week3-分类问题

Course1-Week3-分类问题 文章目录 Course1-Week3-分类问题1. 逻辑回归1.1 线性回归不适用于分类问题1.2 逻辑回归模型1.3 决策边界 2. 逻辑回归的代价函数3. 实现梯度下降4. 过拟合与正则化4.1 线性回归和逻辑回归中的过拟合4.2 解决过拟合的三种方法4.3 正则化4.4 用于线性回归…

elk(filebeat)日志收集工具

elk&#xff08;filebeat&#xff09;日志收集工具 elk&#xff1a;filebeat日志收集工具 和logstash相同 filebeat是一个轻量级的日志收集工具&#xff0c;所使用的系统资源比logstash部署和启动时使用的资源要小得多 filebeat可以运行在非Java环境。他可以代理logstash在…

彻底解决module java.base does not “opens java.io“

需求背景 最近在使用android studio导入hbuilder的HBuilder-Integrate-AS工程时候报错&#xff0c;错误消息如下两种。 错误描述 第一种 Failed to notify dependency resolution listener. void org.gradle.api.artifacts.DependencySubstitutions$Substitution.with(org.g…

mysql8报sql_mode=only_full_group_by(存储过程一直报)

1&#xff1a;修改数据库配置(重启失效) select global.sql_mode;会打印如下信息 ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION里面包含 ONLY_FULL_GROUP_BY&#xff0c;那么就重新设置&#xff0c;在数据库中输入以下代码&#xff0c;去掉ONLY_FULL_GROU…

加密系统,您的数据安全守护者,助您远离泄露风险!

随着云计算、大数据等技术的快速发展&#xff0c;企业在技术升级&#xff0c;业务上云的同时&#xff0c;也面临着来自互联网的各类安全威胁&#xff0c;并且导致数据信息的泄露。企业数据安全问题几乎为新时代人的焦虑又添上了一把火&#xff0c;面对形形色色的网络攻击手段&a…

Python版本与opencv版本的对应关系

python版本要和opencv版本相对应&#xff0c;否则安装的时候会报错。 可以到Links for opencv-python上面查看python版本和opencv版本的对应关系&#xff0c;如图&#xff0c;红框内是python版本&#xff0c;绿框内是opencv版本。 查看自己的python版本后&#xff0c;使用下面…

Linux AMH服务器管理面板本地安装与远程访问

最近&#xff0c;我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念&#xff0c;而且内容风趣幽默。我觉得它对大家可能会有所帮助&#xff0c;所以我在此分享。点击这里跳转到网站。 文章目录 1. Linux 安装AMH 面板2. 本地访问AMH 面板3. Linux安装…

利用simlink转化HDL-verilog

首先在simlink中找到HDL CODER 打开红色Blank DUT&#xff0c;进入里面绿色的子系统开始设计系统 例如设计一个正弦信号发生器&#xff0c;里面用到了add、memory、relation operator、switch、constant、cos模块&#xff0c;cos模块选择了cordic算法&#xff0c;使用cordic那…

数组常用方法

1、filter 筛选 筛选数组中带有某个id的对象 let list[{id:1,name:111},{id:2,name:222},{id:3,name:333},]; let alist.filter((item)>{return item.id1 }); console.log(a)2、findIndex var idx list.findIndex((item) > {return item 2;});返回的idx是该元素在数组…

速达软件任意文件上传漏洞复现

简介 速达软件专注中小企业管理软件,产品涵盖进销存软件,财务软件,ERP软件,CRM系统,项目管理软件,OA系统,仓库管理软件等,是中小企业管理市场的佼佼者,提供产品、技术、服务等信息,百万企业共同选择。速达软件全系产品存在任意文件上传漏洞,未经身份认证得攻击者可以通过此漏…

线上超市小程序可以做什么活动_提升用户参与度与购物体验

标题&#xff1a;线上超市小程序&#xff1a;精心策划活动&#xff0c;提升用户参与度与购物体验 一、引言 随着移动互联网的普及&#xff0c;线上购物已经成为人们日常生活的一部分。线上超市作为线上购物的重要组成部分&#xff0c;以其便捷、快速、丰富的商品种类和个性化…

ROS小练习——服务调用

目录 一、服务名称与消息的获取 二、代码案例 1、C 2、python 三、编译运行 1、配置cmakelist 2、运行 一、服务名称与消息的获取 rosservice list rosservice type /spawn rossrv info turtlesim/Spawn 二、代码案例 1、C //包含头文件 #include "ros/ros.h&qu…

为什么要选择教师这个行业

老师&#xff0c;一个看似平凡却肩负着重大使命的职业&#xff0c;究竟隐藏着怎样的秘密&#xff1f;为什么越来越多的人选择这个行业&#xff0c;又是什么让他们坚持不懈&#xff1f; 实现人生价值 &#xff0c;我能够通过自己的努力&#xff0c;帮助学生们实现他们的梦想。每…

自动化测试:PO模式详解!

PO&#xff08;Page Object&#xff09;模式是一种在自动化测试中常用的设计模式&#xff0c;将页面的每个元素封装成一个对象&#xff0c;通过操作对象来进行页面的交互。 概括来说就是&#xff0c;每个页面都有对应的PO类&#xff0c;PO类中包含了页面的元素定位和操作方法。…