Maven基础入门

简介: • maven是专门用于管理和构建java项目的工具,它基于项目对象模型(pom)的概念,通过一小段描述信息来管理项目的构建,报告和文档:官网:http://maven.apache.org/它的只要功能有:a. 提供了一套标准化的项目结构b. 提供了一套标准化的构建流程(编译,测试,打包,发布......)c. 提供了一套依赖管理机制

Maven

maven介绍

  • maven是专门用于管理和构建java项目的工具,它基于项目对象模型(pom)的概念,通过一小段描述信息来管理项目的构建,报告和文档:官网:http://maven.apache.org/它的只要功能有:
  1. 提供了一套标准化的项目结构
  2. 提供了一套标准化的构建流程(编译,测试,打包,发布......)
  3. 提供了一套依赖管理机制
  • 仓库分类:
  1. 本地仓库:自己计算机上的一个目录
  2. 中央仓库:由maven团队维护的全球唯一的仓库:https://repo1.maven.org/maven2/
  3. 远程仓库(私服):一般由公司团队搭建的私有仓库
  4. 看图
    当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包:如果有,则在项目直接引用
    没有,则去远程仓库直接下载对应的jar包到本地仓库顺序:本地仓库->远程仓库->中央仓库

Maven安装配置

  1. 解压apache-maven-3.6.1.rar即安装完成:https://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/
  2. 配置环境变量MAVEN_HOME为安装路劲到bin目录打开dos命令窗口使用mav(这里需要有空格) -version查看是否完成
  3. 配置本地仓库:修改conf/settings.xml中的< localRepository>为一个指定目录
  4. 配置阿里云私服:修改conf/setting.xml中的<mirrors>标签,为其添加如下标签:为了提高速度

<mirror>

   <id>alimaven</id>

   <name>aliyun maven</name>

   <url>http://maven.aliyun.com/nesus/content/groups/public/</url>

   <mirrirOf>central</mirrorOf>

<mirror>

Maven基本使用

Maven常用命令

  • mvn compile:编译
  • mvn clean:清理
  • mvn test:测试
  • mvn packge:打包
  • mvn install:安装

Maven生命周期

  • Maven构建项目生命周期描述的是一次构建过程经历多少个事件
  • Maven对项目构建的生命周期分为3套
  1. clean:清理工作
  2. default:核心工作,例如编译,测试,打包,安装等
  3. site:产生报告,发布站点等
  4. 红色为常用命令,其他比较少

IDEA配置Mavens

IDEA配置Maven环境

  1. 选择IDEA中FIle-->settings
  2. 搜索maven
  3. 设置IDEA使用本地安装的Maven,并修改配置文件路径
  4. 创建模块,选择Maven,点击next 配置jdk版本最好是8或者11
  5. 填写模块名称,坐标信息
  6. 编写Demo

Maven坐标详解

  1. 什么是坐标?
  • 就是maven中的坐标是资源的唯一标识
  • 使用坐标来定义项目或引入项目中需要的依赖
  1. maven坐标主要组成
  • groupld:定义当前maven项目隶属组织名称(通常是域名反写,例如:com.baidu)
  • artifactld:定义当前maven项目名称(通常是模块名称,例如order-serivice)
  • version:定义当前项目版本号

Idea导入项目

  • 选择右侧Maven面板,点击+号,选择对应项目的pom.xml文件,如果没有maven项目View > Appearance>Tool Window Bars

配置Maven-Helper插件

  • 选择Idea中file中的settings,然后选择Plugins,搜索框输入maven选择第一个Maven helper点击Instabll安装,弹出面板中点击Accept,最后重启idea

依赖管理

  • 使用坐标导入jar包
  1. 在pom.xml中编写<dependencies>标签
  2. <dependencies>标签中使用<dependency>引入坐标
  3. 定义坐标的groupId,artifactiID,version
  4. 点击刷新按钮,使坐标生效

<!--    导入mysql驱动jar包-->

   <dependencies>

       <dependency>

           <groupId>mysql</groupId>

           <artifactId>mysql-connector-java</artifactId>

           <version>5.1.48</version>

       </dependency>

   </dependencies>

  1. 如果遇到3红报错,检查一下配置的路径是否都对了,没问题的话刷新重启Idea
  2. 例如
  3. 经典白学之快捷键:al+insert+选择依赖项+搜索框输入需要导入的依赖包选择版本就可以了,小知识:笔记本的按住fn+alt+insert

依赖范围

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

<dependency>

           <groupId>junit</groupId>

           <artifactId>junit</artifactId>

           <version>3.8.1</version>

           <scope>test</scope>

       </dependency>


依赖范围 编译classPash 测试classPash 运行classPash 例子
compile Y Y Y logback
test N Y N junit
provided N Y N servlet-api
runtime N Y N jdbc驱动
system Y Y Y 存储在本地的jar包
import 这里都是一行用于引入DependencyManagement

  • <scooe>默认值是compile所以全部都可以
相关文章
|
8月前
|
Java 数据库连接 API
Maven - 基础入门与安装配置
Maven - 基础入门与安装配置
118 0
|
5天前
|
Java Maven
2022最新版超详细的Maven下载配置教程、IDEA中集成maven(包含图解过程)、以及导入项目时jar包下载不成功的问题解决
这篇文章是一份关于Maven的安装和配置指南,包括下载、环境变量设置、配置文件修改、IDEA集成Maven以及解决jar包下载问题的方法。
2022最新版超详细的Maven下载配置教程、IDEA中集成maven(包含图解过程)、以及导入项目时jar包下载不成功的问题解决
|
4天前
|
Java 应用服务中间件 Maven
Mac使用Idea配置传统SSM项目(非maven项目)
Mac使用Idea配置传统SSM项目(非maven项目)
13 1
|
5天前
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
14 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
5天前
|
Java Maven
成功解决IDEA中建立新项目Maven会默认选择配置(图解详细说明)
这篇文章提供了在IntelliJ IDEA中设置新项目的Maven配置的详细步骤,包括如何通过菜单路径进入设置,选择Maven配置,以及展示设置后的效果,还提供了Maven的安装教程和解决导入项目时jar包下载问题的方案。
成功解决IDEA中建立新项目Maven会默认选择配置(图解详细说明)
|
5天前
|
SQL 前端开发 Java
在IDEA中使用Maven将SpringBoot项目打成jar包、同时运行打成的jar包(前后端项目分离)
这篇文章介绍了如何在IntelliJ IDEA中使用Maven将Spring Boot项目打包成可运行的jar包,并提供了运行jar包的方法。同时,还讨论了如何解决jar包冲突问题,并提供了在IDEA中同时启动Vue前端项目和Spring Boot后端项目的步骤。
在IDEA中使用Maven将SpringBoot项目打成jar包、同时运行打成的jar包(前后端项目分离)
|
9天前
|
Java Apache Maven
Maven 项目文档
本章介绍如何创建Maven项目文档。例如,在C:/MVN下创建名为`consumerBanking`的项目,可通过命令`mvn archetype:generate`快速搭建。之后需在`pom.xml`中添加或更新插件配置,如`maven-site-plugin`版本至3.3,以避免运行`mvn site`时遇到类未找到错误。这确保文档能成功生成。
|
9天前
|
XML Java Maven
"Maven项目模块化大揭秘!掌握Model间最佳继承设计,让你的代码优雅如诗,项目维护不再愁!"
【8月更文挑战第11天】Maven是Java项目中常用的构建工具,其模块化特性对大型项目的管理至关重要。本文介绍Maven中的继承与聚合机制,指导如何通过继承消除重复配置,以及如何通过聚合统一构建多个模块。遵循单一职责原则,文章建议按功能划分模块,并提供了父POM与子POM的配置示例。此外,还讨论了适度模块化、依赖管理的原则,帮助提升项目的可维护性和扩展性。
22 4
|
7天前
|
Java Apache Maven
Maven 项目文档
本章介绍如何创建Maven项目文档。以在C:/MVN下建立的`consumerBanking`项目为例,利用`mvn archetype:generate`命令快速搭建Java项目骨架。为避免运行`mvn site`时出现`NoClassDefFoundError`错误,需在`pom.xml`中升级`maven-site-plugin`至3.3版本,并加入`maven-project-info-reports-plugin`插件以完善站点文档生成配置。
|
11天前
|
Java Apache Maven
Maven 项目文档
本章介绍如何创建Maven项目文档,例如在C:/MVN下使用`mvn archetype:generate`命令快速搭建`consumerBanking`项目。需配置pom.xml,添加maven-site-plugin 3.3及maven-project-info-reports-plugin 2.7,避免运行`mvn site`时出现类未定义错误,确保文档生成顺利。