小白快速上手maven【基础篇】

Maven的概念和作用

  1. Maven是什么?
  2. POM的概念
  1. Maven的作用?
    1. 提供自动化构建项目的方式,并且统一了项目的结构
    2. 管理项目中的依赖

Maven基础概念-仓库,坐标,仓库配置

  1. 仓库:用于存储各种jar包资源

根据功能的不同,仓库分成本地仓库,私服仓库,中央仓库。

所有的jar包资源最终都是来源于远端的中央仓库。

但是为了解决网络资源和提高下载资源速度,所以可以建立一个私服仓库,提前将资源下载好。

这样本地仓库在拉取资源的时候,可以直接从私服仓库中获取,而不是从中央仓库中获取。

私服的作用

  • 在一定范围内共享资源 ,用于缓解从中央仓库上拉取资源速度慢的问题,但只对内开放共享。
  • 保护具有版权的jar包,包括自主研发的和自行购买的jar包
  1. 坐标
  • 什么是坐标?
  • 坐标的主要组成
  • 坐标的作用
  1. 仓库配置

如果要修改maven获取资源的来源,即不从中央仓库中获取资源,可以使用阿里云的镜像仓库。

将maven配置阿里云的镜像也很简单,可以将以下配置写入%MAVEN_HOME%/conf/settting.xml中的<mirrors>标签中。

xml 复制代码
<mirror>
  <id>aliyunmaven</id>
  <mirrorOf>*</mirrorOf>
  <name>阿里云公共仓库</name>
  <url>https://maven.aliyun.com/repository/public</url>
</mirror>

第一个Maven项目

Maven项目结构

  • poject
    • maven-project
      • src
        • main
          • java
          • resources
        • test
          • java
          • resources
      • pom.xml

用IDEA进行Maven项目构建

  1. 创建maven项目
  1. 起组织名GoupId,项目名ArtifactId,项目版本号Version
  1. 查看项目结构
  1. 在pom.xml中添加junit.jar的依赖
xml 复制代码
<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.12</version>
    <scope>test</scope>
  </dependency>
</dependencies>
  1. 使用构建工具操作项目
  • 使用Idea给构建方法进行一个配置
  • 也可以直接使用maven的构建工具

上面的项目是没有使用模板的maven项目,当然也会有带有模板的项目。

最常用的就是基于Java的Maven项目,需要选择quickstart模板。和基于Web的Maven项目,需要使用webapp模板。

  • quickstart模板

特点:

  • 自带了一个初始的程序
  • pom.xml中已经配置好了junit和一些其他maven插件
  • webapp模板

特点:

  • 自带了junit和一些maven插件
  • 有一个webapp的目录,其中有web.xml。(因为没有java,resources,test文件夹,可以自己补上)

在Maven项目中安装Tomcat插件

将以下内容粘贴在pom.xml中,然后进行刷新就可以得到tomcat插件,在构建枸橘中

xml 复制代码
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
            </plugin>
        </plugins>
    </build>
相关推荐
小江的记录本4 分钟前
【JVM虚拟机】类加载机制:类加载全流程:加载→验证→准备→解析→初始化(附《思维导图》+《面试高频考点清单》)
java·jvm·spring boot·算法·安全·spring·面试
千纸鹤の脉搏12 分钟前
多线程的初步了解---进程与线程
java·开发语言·学习·线程
许彰午30 分钟前
状态模式实战——Row对象的状态机
java·ui·状态模式
搬石头的马农1 小时前
Claude Code SpringBoot开发:从0到1搭建企业级项目的6个核心Skill
java·人工智能·spring boot·后端·ai编程
西安邮电大学1 小时前
Redis为什么快?
java·redis·后端·其他·面试
折哥的程序人生 · 物流技术专研1 小时前
《Java 100 天进阶之路》第39篇:Java泛型方法的定义和使用
java·开发语言·后端·面试·求职招聘
土狗TuGou1 小时前
SQL内功笔记 · 第6篇:窗口函数的使用ROW_NUMBER等
java·数据库·后端·sql·mysql
Chase_______1 小时前
【Java基础核心知识点全解·09】Java 内存布局与垃圾回收详解:栈、堆、栈帧、GC Roots 与对象回收
java·开发语言
武子康1 小时前
Java-11 深入浅出 MyBatis 一级缓存详解:从原理到失效场景 Executor
java·后端
寻道码路1 小时前
LangChain4j Java AI 应用开发实战(十):Embedding 模型与文本分类 - 语义向量化
java·人工智能·ai·embedding