Java----Maven详解

news2024/9/21 21:38:19

前言

Maven是Java项目的构建工具,通过项目对象模型(POM)管理项目配置信息,自动化构建、测试和部署过程。开发人员可定义项目结构、依赖和构建流程,提高开发效率和质量。本文介绍基本概念和用法,帮助您更好地利用Maven管理Java项目,提高项目开发效率和质量。愿本文对您了解和使用Maven有所帮助。

作者建议:学习知识在于深度理解,多动手、多动脑,总能更快地领悟。不要仅仅停留在阅读代码的层面,亲自动手敲打一遍,会带来更丰富的收获。通过实践,我们能够更深入地理解知识,掌握技能,并且在解决问题时更加得心应手。相信自己的能力,坚持不懈地实践,你将会取得更大的进步和成就。让学习成为一种习惯,让动手实践成为你提升的捷径,加油!你是最棒的!

目录

概述

Maven下载安装配置

Maven下载

安装

配置环境变量

配置setting文件

idea中设置Maven

创建Maven工程

maven项目创建

pom.xml配置

Maven命令


概述

maven 是 apache软件基金会的一个开源项目

maven是一个项目构建(项目管理)工具

具体表现:管理项目依赖的jar文件,以及jar文件之间的依赖关系(在A.jar文件中,用到B.jar),可以完成项目的测试,编译(.java----->.class),打包(源代码---->.jar文件)等工作

Maven的简单理解

  1.    maven将我们常用的jar收集起来,在他的服务器上存储
  2.    每个jar都有一个独一无二的地址
  3. ​  我们开发期间,只需要将jar包的地址配置在项目的文件中即可
  4.   借助maven就可以自动去官方下载jar文件到本地
  5.   在maven管理的项目根目录下,都有一个pom.xml文件
  6.   在pom.xml文件中指示maven如何工作

Mavenjar文件的坐标:每一个jar文件在Maven中都有唯一的地址.

Maven仓库: 中央仓库(全球共享唯一)   中央仓库镜像(阿里云镜像)多个    本地仓库

Maven在查找jar文件首先在本地仓库寻找,如果本地仓库没有,就会去中央仓库下载

Maven下载安装配置

Maven下载

Maven官网:官网下载传送门

作者使用3.6.0版本:maven-3.6.0-bin.zip

安装

解压压缩包,将压缩包解压到一个路径没有中文 空格 特殊字符的文件夹中

配置环境变量

1.首先复制bin的目录

右键此电脑->属性->高级系统设置->环境变量

进去点击path---->然后点击编辑

  配置path变量

   验证安装是否成功,win+R运行cmd,输入mvn -version,如图所示则配置成功

如上图显示,则表明配置成功

配置setting文件

在maven安装目录conf目录找到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>

idea中设置Maven

ok配置到这一步你已经成功了

创建Maven工程

maven项目创建

pom.xml配置

pom.xml 文件基本结构

1.项目基本信息

<modelVersion>4.0.0</modelVersion>
 <groupId>org.example</groupId>
 <artifactId>test</artifactId>
 <version>1.0-SNAPSHOT</version>

2. 指定编译时使用的jdk版本

<properties>
 <maven.compiler.source>1.8</maven.compiler.source> <!-- 设置 Java 源代码兼容性-->
 <maven.compiler.target>1.8</maven.compiler.target> <!-- 设置编译的目标 JVM版本-->
 </properties>

3. 依赖信息

<dependencies>
 <!--mysql-->
 <dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <version>8.0.16</version>
 </dependency>
 </dependencies>

Maven 仓库官网(http://mvnrepository.com/)

Maven命令

Maven 常用命令

  1. clean 删除编译的target
  2.  compile 编译
  3.  package 打包

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

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

相关文章

ros2编写pcl节点加载pcd文件

初次学习ros2和pcl&#xff0c;尝试在ros2中创建节点&#xff0c;加载pcd文件&#xff0c;并在rviz中进行可视化&#xff0c;记录一下整个过程。 编辑环境 ubuntu20.04 ros2_foxy 创建节点 mkdir -p proj_ws_pcl/src #创建工程文件夹 cd proj_ws_pcl/src #创建源码文件夹 …

社交媒体数据恢复:绿洲

本教程将向您展示如何在绿洲平台上备份和恢复数据&#xff0c;但不涉及推荐任何具体的数据恢复软件。 一、绿洲平台数据备份 为了确保数据的安全&#xff0c;在日常使用过程中&#xff0c;我们需要定期备份绿洲平台上的数据。以下是备份绿洲平台数据的步骤&#xff1a; 登录绿…

opencv进阶 ——(四)图像处理之去高光

去高光步骤&#xff1a; 1、转换成灰度图 2、二值化图像&#xff0c;得到高光区域 3、进行膨胀操作&#xff0c;放大高光区域&#xff0c;以此得到高光蒙版 4、通过illuminationChange函数对高光区域消除高光

Vite + Vue3 部署 GitHub

因为静态资源是可以部署到 GitHub 上&#xff0c;自己顺便学习部署网站 因为我使用的是 Vite 工具&#xff0c;官方有提供相应 Demo 部署静态站点 | Vite 官方中文文档 新建文件夹 .github 然后再建一个文件夹 workflows 新建文件 main.yml 文件 直接使用官方文档 demo #…

携手AI,如何共赢未来?

5/25日参加了一个培训分享会&#xff0c;由博奥研究院、武汉博奕咨询和华工科技联合举办&#xff0c;主题是“携手Ai&#xff0c;共赢未来”。 抱着跟书友线下交流的心态我参与了&#xff0c;参与前我对博奥做了基础了解&#xff0c;他们跟工信部考试和教育中心有合作&#x…

区间预测 | Matlab实现DNN-KDE深度神经网络结合核密度估计多置信区间多变量回归区间预测

区间预测 | Matlab实现DNN-KDE深度神经网络结合核密度估计多置信区间多变量回归区间预测 目录 区间预测 | Matlab实现DNN-KDE深度神经网络结合核密度估计多置信区间多变量回归区间预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现DNN-KDE深度神经网络结合…

Textual for Mac:轻量级IRC客户端

在寻找一款高效、轻量级的IRC客户端时&#xff0c;Textual for Mac无疑是你的不二之选。它集成了众多现代技术&#xff0c;如本机IPv6、最新的IRCv3规范&#xff0c;以及客户端证书身份验证&#xff0c;让你的聊天体验更加顺畅和安全。 Textual for Mac v7.2.2免激活版下载 Tex…

Soybean Admin:一款高效、现代化的后台管理模板探索

随着前端技术的快速发展&#xff0c;越来越多的开发者开始寻求使用最新技术栈来构建高效、用户友好的后台管理系统。Soybean Admin作为一款基于Vue3、Vite5、TypeScript、Pinia、NaiveUI和UnoCSS等前沿技术的后台管理模板&#xff0c;为我们提供了一个全新的解决方案。本文将深…

SWM320系列应用

一、Swm320系列 SPI 应用 现象&#xff1a;应用SWM320的SPI1的模式0作为从机&#xff0c;整体产品硬件平台同步上电&#xff0c;从机的SPI无法正常工作&#xff0c;进不了中断&#xff0c;手工复位一次或连接SWD调试就正常了&#xff0c;这样的情况应该怎么解决&#xff1f;其…

Next.js里app和pages文件夹的区别

最近开始学 Next.js&#xff0c;因为纯自学&#xff0c;有时候网上找到的学习资料都是几年前的&#xff0c;难免会有点 outdated&#xff0c;因此当自己创建的项目结构和视频里呈现的结构不一致时&#xff0c;难免会有点困惑。 例如&#xff0c;今天遇到的第一个问题就是&…

企业如何正确地利用LLM大模型?

大型语言模型 (LLM) 不值得信任。就是这样。 考虑到它们先进的 AI 能力以及当今强大的基础模型的普遍知识&#xff0c;这似乎是一件令人惊讶的事情。然而&#xff0c;问题的关键在于 LLM 无法解释其输出。你不能信任 LLM 的结果&#xff0c;不是因为它不准确&#xff0c;而是因…

(南京观海微电子)——MCU屏介绍

MCU-LCD屏与RGB-LCD屏主要区别在于显存的位置&#xff1a; RGB-LCD的显存是由系统内存充当的&#xff0c;因此其大小只受限于系统内存的大小&#xff0c;这样RGB-LCD可以做出较大尺寸&#xff0c;像现在4.3只能算入门级&#xff0c;而MID中7、10的屏都开始大量使用。 MCU-L…

window好用的网速工具

这是一个用于显示当前网速、CPU及内存利用率的桌面悬浮窗软件&#xff0c;并支持任务栏显示&#xff0c;支持更换皮肤。 github链接如下 https://github.com/zhongyang219/TrafficMonitor?tabreadme-ov-file

Spring MVC+mybatis 项目入门:旅游网(一)项目创建与准备

个人博客&#xff1a;Spring MVCmybatis 项目入门:旅游网&#xff08;一&#xff09;项目创建与准备 | iwtss blog 先看这个&#xff01; 这是18年的文章&#xff0c;回收站里恢复的&#xff0c;现阶段看基本是没有参考意义的&#xff0c;技术老旧脱离时代&#xff08;2024年辣…

解密Spring Boot Starter与自动配置:探秘神奇的背后

starter可以理解为Spring Boot中的一站式集成启动器&#xff0c;包含了一系列可以集成到应用中的依赖项&#xff0c;可以快递集成spring组件及其框架&#xff0c;而不需要到处找示例代码。 一、为什么要用starter&#xff1f; 在springboot还没有出来之前&#xff0c;我们使用…

白嫖的在线工具类宝藏网站清单,快点击进来收藏一波

简单整理了一下自己日常经常使用的10个免费工具网站&#xff0c;建议点赞关注收藏&#xff0c;快点分享给小伙伴们&#xff01; 1.奶牛快传:用户体验更好的网盘工具。 https://cowtransfer.com/ 今年开始使用的一款网盘工具&#xff0c;和百度网盘类似,叫奶牛快传&#xff0c;如…

实现地图上展示坐标时,不要全部展示、只展示几个距离相对较大marker点位,随着地图放大再全部展示出来。

比例尺级别地面分辨率 &#xff08;米/像素&#xff09;比例尺0156543.031&#xff1a;591658700.82178271.5151&#xff1a;295829350.4239135.75751&#xff1a;147914675.2319567.878751&#xff1a;73957337.649783.9393751&#xff1a;36978668.854891.9696881&#xff1a…