Maven简介

Maven简述

Maven是一个Java项目关系和构建工具,它可以定义项目结构、项目依赖,并使用统一的方式进行自动化构建,是Java项目不可缺少的工具。

Maven的主要功能有:

提供了一套标准化的项目结构;

提供了一套标准化的构建流程(编译,测试,打包,发布……);

提供了一套依赖管理机制

Maven项目结构

a-maven-project					//项目名
|—— pom.xml						//项目描述文件
|—— src							
|—— —— main					
|—— —— —— java				//存放Java源码的目录
|—— —— —— resources			//存放资源文件的目录
|—— —— test
|—— —— —— java				//存放测试源码的目录
|—— —— —— resources			//存放测试资源的目录
|—— target						//所有编译、打包生成的文件

唯一ID

标签名 备注
groupId 相当于Java的包名
artifactId 类似于Java的类名,通常是项目名称
version 项目版本
一般情况下,引用其他第三方库的时候,通过这3个变量可以确定
例如,依赖commons-logging:
<dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging</artifactId>
    <version>1.2</version>
</dependency>

使用声明一个依赖后,Maven就会自动下载这个依赖包

依赖关系

scope ————— 确立依赖关系
Maven定义了几种依赖关系,compile、test、runtime、provided

scope 说明
compile 编译时需要用到该jar包(默认)
test 编译Test时需要用到该jar包
runtime 编译时不需要,但运行时需要用到
provided 编译时需要用时,但运行时由JDK或某个服务器提供
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.48</version>
    <scope>runtime</scope>
</dependency>
posted @   MaxLij  阅读(76)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示