Maven环境搭建

Maven

1. 概述

ApacheMaven是一个软件项目管理和构建工具。基于项目对象模型(POM)的概念,Maven可以从中心信息中管理项目的构建、报告和文档
理解: maven构建项目(100%)而且帮你完成jar的统一管理。

思考: 原来的jar---从网址下载jar放入/WEB-INF/lib下---构建jar。

maven根据的坐标帮你从一个统一的网址自动下载和构建。[统一的网址:远程仓库]

2. maven管理jar的流程

maven构建的项目:在pom.xml文件中指定jar的坐标。

首先根据坐标在本地仓库找到对应的jar包,

若本地仓库找不到jar,在联网的情况下,从远程仓库查找,

找到后,也会放入本地仓库一份。

maven工程会根据pom.xml中的坐标先在本地仓库查找jar,如果找不到则从远程仓库查找,并把查找到的jar放入本地仓库,以便下次能找到

3. 安装maven并设置本地仓库的地址

1.将压缩包解压

bin目录:maven的脚本

conf目录:配置文件

lib目录:maven依赖的jar

2.配置本地仓库conf/setting.xml

修改maven的本地仓库地址

xml 复制代码
<localRepository>D:\repMaven</localRepository>
//D:\repMaven:为自己本地仓库的地址

3.修改为alibaba的远程仓库镜像

xml 复制代码
<mirrors>
	 <!-- 中央仓库在中国的镜像 -->
        <mirror>
            <id>alimaven</id>
            <name>aliyun maven</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
</mirrors>

4.配置maven的环境变量

  1. 编辑系统变量:变量名:MAVEN_HOME {名称固定}

变量值:maven的所在目录

  1. PATH:%MAVEN_HOME%\bin

5.测试

cmd------mvn -version

4.idea管理maven

配一个

配全部

5.idea创建maven的java工程

xml 复制代码
  <!--引入jar-->
  <dependencies>
      <!--引入了jstl标签库-->
      <dependency>
          <groupId>jstl</groupId>
          <artifactId>jstl</artifactId>
          <version>1.2</version>
      </dependency>
  </dependencies>

https://mvnrepository.com/

6.maven创建web工程

缺少java和resources目录

替换web.xml

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
</web-app>

7.相关依赖

xml 复制代码
 <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.28</version>
    </dependency>
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
      <version>1.2.8</version>
    </dependency>
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.83</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
    </dependency>
  </dependencies>
相关推荐
一條狗7 分钟前
学习日报 20251007|深度解析:基于 Guava LoadingCache 的优惠券模板缓存设计与实现
java·oracle·loadingcache
Miraitowa_cheems37 分钟前
LeetCode算法日记 - Day 64: 岛屿的最大面积、被围绕的区域
java·算法·leetcode·决策树·职场和发展·深度优先·推荐算法
Lisonseekpan1 小时前
Spring Boot 中使用 Caffeine 缓存详解与案例
java·spring boot·后端·spring·缓存
为java加瓦1 小时前
Rust 的类型自动解引用:隐藏在人体工学设计中的魔法
java·服务器·rust
SimonKing1 小时前
分布式日志排查太头疼?TLog 让你一眼看穿请求链路!
java·后端·程序员
消失的旧时光-19431 小时前
Kotlin 判空写法对比与最佳实践
android·java·kotlin
小许学java1 小时前
Spring AI快速入门以及项目的创建
java·开发语言·人工智能·后端·spring·ai编程·spring ai
一叶飘零_sweeeet2 小时前
从 “死锁“ 到 “解耦“:重构中间服务破解 Java 循环依赖难题
java·循环依赖
whltaoin2 小时前
Java 后端与 AI 融合:技术路径、实战案例与未来趋势
java·开发语言·人工智能·编程思想·ai生态