Maven 安装教程

一、安装地址

        1.官网安装最新版本

        2.其他版本,我这里是maven-3/3.6.2

        

二、配置环境

        1. 点击此电脑鼠标右击->属性->高级系统设置->环境变量 ,配置系统变量->新建:MAVEN_HOME

       

        2.配置path 路径 :%MAVEN_HOME%\bin

         

三、安装成功,检测

        win+r -> 输入 cmd,输入

mvn -v

         这样就是安装成功了。

四、配置本地仓库

       当Maven安装好之后,Maven默认将仓库是放在C盘中的.m2文件夹中,其文件位置对于安全行非常大,因此在开发的时候,我们都会改变起仓库的位置。

repo是maven在本地的jar包库,项目中依赖的jar文件都是网上下载下来,放在本地库(repo 就是这个仓库)

        1.在自己解压的安装目录下,新建 repo 文件

         2.编辑配置文件(配置文件在,安装目录下->conf->settings.xml 文件)

        

        3. 修改默认仓库路径

<localRepository>D:\Program Files\Java\apache-maven-3.6.2\repo</localRepository>

        4. 配置阿里云(放在mirrors 标签之间)

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

        5. 配置jdk(放在profiles 标签之间) 

<profile><id>jdk-1.8</id><activation><activeByDefaut>true</activeByDefault><jdk>1.8</jdk></activation><properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion></properties>
</profile>

 五、新建 Maven 项目

1.New Project ->选择 Maven ->next

        2.编辑项目名字等基本信息->next

 3.finish

六、其他

        1.maven 常用命令

  • mvn compile :编译

  • mvn clean:清理

  • mvn test:测试

  • mvn package:打包

  • mvn install:安装

        2.导入依赖包

  • 在项目的 pom.xml 中编写<dependencies>标签

  • 在 <dependencies>标签中 使用<dependency>引入坐标

  • 定义坐标的 groupId,artifactId,version

        Ⅰ  在项目的 pom.xml 中编写<dependencies>标签

        Ⅱ 编辑后点击刷新按钮 使之生效

        或者

 

        Ⅲ 快捷导入包

          在 pom.xml 中 按 alt + insert,选择 Dependency(添加依赖项)

        在弹出的面板中搜索对应坐标,然后双击选中对应坐标 

        点击刷新按钮,使坐标生效

        3.依赖范围

        通过设置坐标的依赖范围(scope),可以设置 对应jar包的作用范围:编译环境、测试环境、运行环境。

        如下图所示给 junit 依赖通过 scope 标签指定依赖的作用范围。 那么这个依赖就只能作用在测试环境,其他环境下不能使用。

那么 scope 都可以有哪些取值呢?

compile :作用于编译环境、测试环境、运行环境。
test : 作用于测试环境。典型的就是Junit坐标,以后使用Junit时,都会将scope指定为该值
provided :作用于编译环境、测试环境。我们后面会学习 servlet-api ,在使用它时,必须将 scope 设置为该值,不然运行时就会报错
runtime : 作用于测试环境、运行环境。jdbc驱动一般将 scope 设置为该值,当然不设置也没有任何问题

 

注意:

  • 如果引入坐标不指定 scope 标签时,默认就是 compile 值。以后大部分jar包都是使用默认值。

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

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

相关文章

Pinia的使用与原理

Pinia 与 Vuex 对比 vuex&#xff1a; ts兼容性不好命名空间的缺陷(只能有一个store)mutation和action有区别 pinia&#xff1a; 更简洁的APIts兼容性更好无命名空间的缺陷(可以创建多个store)删除了mutation&#xff0c;统一在action中开发 使用方法 引入 // main.ts imp…

ChatGPT之制作短视频

引言 今天带来了如何使用 ChatGPT和剪映来制作简单的短视频教程&#xff0c;在这其中 ChatGPT的作用主要是帮我们生成文案&#xff0c;剪映的功能就是根据文案自动生成视频&#xff0c;并配上一些图片、动画、字幕和解说。 ChatGPT生成文案 首先&#xff0c;我们需要使用提示…

Anaconda的安装及其配置

一、简介 Anaconda是一个开源的包、环境管理器&#xff0c;主要具有以下功能和特点&#xff1a; 提供conda包管理工具&#xff1a;可以方便地创建、管理和分享Python环境&#xff0c;用户可以根据自己的需要创建不同的环境&#xff0c;每个环境都可以拥有自己的Python版本、库…

python爬虫抓取新闻并且植入自己的mysql远程数据库内

python爬虫抓取新闻并且植入自己的mysql远程数据库内&#xff01;这个代码是我自己写了很久才写好的&#xff0c;分享给大家。喜欢的点个赞。 # -*- coding: utf-8 -*- from xml.etree import ElementTree as ET import datetime import randomimport pymysql from selenium im…

常用排序算法(Java版本)

1 引言 常见的排序算法有八种&#xff1a;交换排序【冒泡排序、快速排序】、插入排序【直接插入排序、希尔排序】、选择排序【简单选择排序、堆排序】、归并排序、基数排序。 2 交换排序 所谓交换&#xff0c;就是序列中任意两个元素进行比较&#xff0c;根据比较结果来交换…

nginx slice模块的使用和源码分析

文章目录 1. 为什么需要ngx_http_slice_module2. 配置指令3. 加载模块4. 源码分析4.1 指令分析4.2 模块初始化4.3 slice模块的上下文4.2 $slice_range字段值获取4.3 http header过滤处理4.4 http body过滤处理5 测试和验证 1. 为什么需要ngx_http_slice_module 顾名思义&#…

程序员为什么不喜欢关电脑,这回答很霸道!

在大家的生活中&#xff0c;经常会发现这样一个现象&#xff1a;程序员经常不关电脑。 至于程序员不关电脑的原因&#xff0c;众说纷纭。 其中这样的一个程序员&#xff0c;他的回答很霸道&#xff1a; “因为我是程序员&#xff0c;我有权选择不关电脑。我需要在任何时候都能够…

C++一维数组

个人主页&#xff1a;PingdiGuo_guo 收录专栏&#xff1a;C干货专栏 铁汁们大家好呀&#xff0c;我是PingdiGuo_guo&#xff0c;今天我们来学习一下数组&#xff08;一维&#xff09;。 文章目录 1.数组的概念与思想 2.为什么要使用数组 3.数组的特性 4.数组的操作 1.定义…

0 代码自动化测试:RF 框架实现企业级 UI 自动化测试

前言 现在大家去找工作&#xff0c;反馈回来的基本上自动化测试都是刚需&#xff01;没有自动化测试技能&#xff0c;纯手工测试基本没有什么市场。 但是很多人怕代码&#xff0c;觉得自动化测试就需要代码&#xff01;代码学习起来很难&#xff01; 当然代码学习不难&#xf…

优思学院|精益生产-改变制造业的革命性理念

在今日这个变幻莫测、竞争如潮的市场环境中&#xff0c;企业如同海上的帆船&#xff0c;面临着狂风巨浪的考验。在这样的大背景之下&#xff0c;精益生产&#xff08;Lean Production&#xff09;这一理念&#xff0c;宛如一盏明灯&#xff0c;指引着无数企业穿越迷雾&#xff…

安科瑞消防设备电源监控系统在杭后旗医院项目的设计与应用

摘要&#xff1a;本文简述了消防设备电源的组成原理&#xff0c;分析了消防设备电源监控系统在应用中的设计依据和相关规范。通过安科瑞消防设备电源监控系统在杭后旗医院项目的实例介绍&#xff0c;阐述了消防设备电源功能的实现及其重要意义。 关键词&#xff1a;消防设备电…

OpenGL的着色器内存访问

着色器内存访问 Shader Memory Access 着色器在高度流水线化的系统中执行时&#xff0c;由于其读写操作的顺序在很大程度上未定义&#xff0c;可能会引发排序和同步问题。 着色器内存访问顺序&#xff1a; 对于顶点着色器和细分评估着色器&#xff0c;尽管对于应用程序指定的每…

【jenkins】主从机制及添加Slave节点操作

一、master-slave 日常构建Jenkins任务中&#xff0c;会经常出现下面的情况&#xff1a; 自动化测试需要消耗大量的 CPU 和内存资源&#xff0c;如果服务器上还有其他的服务&#xff0c;可能会造成卡顿或者宕机这样的情况&#xff1b; Jenkins 平台上除了这个项目&#xff0c…

【Linux】解决:为什么重复创建同一个【进程pid会变化,而ppid父进程id不变?】

前言 大家好吖&#xff0c;欢迎来到 YY 滴Linux 系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

单调队列优化DP,LeetCode1696. 跳跃游戏 VI

一、题目 1、题目描述 给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。 一开始你在下标 0 处。每一步&#xff0c;你最多可以往前跳 k 步&#xff0c;但你不能跳出数组的边界。也就是说&#xff0c;你可以从下标 i 跳到 [i 1&#xff0c; min(n - 1, i k)] 包含 两个…

开源软件在技术革新和行业变革中的作用

引言&#xff1a; 在数字化浪潮推动下&#xff0c;开源软件以其独特的魅力重构了软件开发的生态系统&#xff0c;成为技术创新和行业变革的催化剂。它通过低成本、高协作性、极致透明度的特征&#xff0c;成为企业和个人的首选。本文将深度探讨开源软件的影响力&#xff0c;展…

【C++刷题】二叉树的深搜

二叉树的深搜 一、计算布尔二叉树的值1、题目描述2、代码3、解析 二、求根节点到叶节点数字之和1、题目描述2、代码3、解析 三、二叉树剪枝1、题目描述2、代码3、解析 四、验证二叉搜索树1、题目描述2、代码3、解析 五、二叉搜索树中第K小的元素1、题目描述2、代码3、解析 六、…

16.docker删除redis缓存数据、redis常用基本命令

1.进入redis容器内部 &#xff08;1&#xff09;筛选过滤出redis容器 docker ps | grep "redis"&#xff08;2&#xff09;进入redis容器 #说明&#xff1a;d24为redis容器iddocker exec -it d24 /bin/bash2.登陆redis (1) 进入redis命令行界面 redis-cli说明&a…

重写Sylar基于协程的服务器(7、TcpServer HttpServer的设计与实现)

重写Sylar基于协程的服务器&#xff08;7、TcpServer & HttpServer的设计与实现&#xff09; 重写Sylar基于协程的服务器系列&#xff1a; 重写Sylar基于协程的服务器&#xff08;0、搭建开发环境以及项目框架 || 下载编译简化版Sylar&#xff09; 重写Sylar基于协程的服务…

算法随想录第五十一天打卡|309.最佳买卖股票时机含冷冻期, 714.买卖股票的最佳时机含手续费 ,总结

309.最佳买卖股票时机含冷冻期 本题加了一个冷冻期&#xff0c;状态就多了&#xff0c;有点难度&#xff0c;大家要把各个状态分清&#xff0c;思路才能清晰 视频讲解&#xff1a;动态规划来决定最佳时机&#xff0c;这次有冷冻期&#xff01;| LeetCode&#xff1a;309.买卖…