JavaSec 基础之 Maven

文章目录

Maven

介绍

Maven是一个跨平台的项目管理工具。作为Apache组织的一个颇为成功的开源项目,其主要服务于基于Java平台的项目创建,依赖管理和项目信息管理。maven是Apache的顶级项目,解释为"专家,内行",它是一个项目管理的工具,maven自身是纯java开发的,可以使用maven对java项目进行构建、依赖管理。

基于 POM(项目对象模型) 的概念

作用

  • 依赖管理
    依赖指的就是是 我们项目中需要使用的第三方Jar包, 一个大一点的工程往往需要几十上百个Jar包,按照我们之前的方式,每使用一种Jar,就需要导入到工程中,还要解决各种Jar冲突的问题.
    Maven可以对Jar包进行统一的管理,包括快速引入Jar包,以及对使用的 Jar包进行统一的版本控制
  • 一键构建项目
    之前我们创建项目,需要确定项目的目录结构,比如src 存放Java源码, resources存放配置文件,还要配置环境比如JDK的版本等等,如果有多个项目 那么就需要每次自己搞一套配置,十分麻烦
    Maven为我们提供了一个标准化的Java项目结构,我们可以通过Maven快速创建一个标准的Java项目.

Maven 下载与安装

首先要到官网去下载它的安装软件。http://maven.apache.org/download.cgi

下载完成后解压

  1. bin:存放了 maven 的命令
  2. boot:存放了一些 maven 本身的引导程序,如类加载器等
  3. conf:存放了 maven 的一些配置文件,如 setting.xml 文件
  4. lib:存放了 maven 本身运行所需的一些 jar 包

然后我们开始配置 maven

  1. 配置本地仓库

    新建文件夹然后打开 settings.xml 进行配置,把新建的文件路径放进去

    <localRepository>D:\develop\apache-maven-3.9.6\mvn_local_repo</localRepository
    
  2. 配置远程仓库

    xml 复制代码
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>
            http://maven.aliyun.com/nexus/content/groups/public/
        </url>
        <mirrorOf>central</mirrorOf>        
    </mirror>
  3. 配置全局变量

Maven中的仓库是用来存放maven构建的项目和各种依赖的(Jar包)。

  • 本地仓库: 位于自己计算机中的仓库, 用来存储从远程仓库或中央仓库下载的插件和 jar 包,
  • 远程仓库: 需要联网才可以使用的仓库,阿里提供了一个免费的maven 远程仓库。
  • 中央仓库: 在 maven 软件中内置一个远程仓库地址 http://repo1.maven.org/maven2 ,它是中 央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包,它包 含了世界上大部分流行的开源项目构件

一个本地仓库一开始是空的,公司里有人用到某个 jar 包就去中央仓库下载到本地仓库,如果团队里有人又用到了这个 jar 包就不用再下载了,直接去本地读取,远程仓库是因为国内中央仓库太慢了,于是配置了私人的服务器

IDEA 集成 Maven

配置Maven环境

选择 IDEA中 File --> Settings --> Build,Execution,Deployment --> Build Tools --> Maven

配置 maven 不要在项目里配置,先关闭这个项目全局配置,不然每次创建新的项目还是没有配置

创建 Maven 项目

file-->new-->project

选择new project新建Maven Archetype项目,将name栏目填写项目名称,并且选择JDK路径(与之前JRE路径一致)并且选择Archetype选项栏中的maven-archetype-quickstart,并且点击创建

下面这个是 maven 的坐标。

创建完成后是这么左侧目录是这么一个情况

因为 main 文件夹下没有Resource目录,所以我们要创建该目录。

找到main,右键,选择new Directory--->填写resources --->选中resources,右键选择Resources,点击ok即可。

目录说明

src/main/java 		 ------ 存放项目的.java 文件 
src/main/resources 	 ------ 存放项目资源文件,如数据库的配置文件 
src/test/java 		------ 存放所有单元测试.java 文件,如 JUnit 测试类 
target 			    ------ 项目输出位置,编译后的class 文件会输出到此目录 
pom.xml              ------maven 项目核心配置文件 
导入 maven 项目

如果我们想导入其他 maven 项目,只要导入这个 maven 项目的 pom.xml 文件就行了。

idea 右侧的 maven,点击 + 号

MAVEN管理jar包

如果项目需要导入某个jar包,则需要再pom.xml中 dependencies 标签内添加依赖的坐标

这里没必要死记硬背,只需要知道我们要在项目中导入某个依赖要填写什么东西,能理解这几句代码的意思,就行了,基本上要导入某个jar包都是ctrl + c和ctrl + v解决,接下来会有一个方法方便我们使用MAVEN导入jar包。

点击进入MAVEN中央仓库Maven Repository: Search/Browse/Explore (mvnrepository.com)

搜索框输入你想要的jar包,这里以junit为例子,点击第二个就行了

看本地的坐标我们当前用的是 3.8 版本,切换一个 4.0 试试

点进去,可以看到自动生成了 坐标

复制粘贴到我们本地 pom.xml 里面来,去掉 scope 标签没什么用

点击右上角开始下载

成功替换 jar 包

相关推荐
爬山算法14 分钟前
Maven(28)如何使用Maven进行依赖解析?
java·maven
2401_8574396938 分钟前
SpringBoot框架在资产管理中的应用
java·spring boot·后端
怀旧66639 分钟前
spring boot 项目配置https服务
java·spring boot·后端·学习·个人开发·1024程序员节
李老头探索41 分钟前
Java面试之Java中实现多线程有几种方法
java·开发语言·面试
芒果披萨1 小时前
Filter和Listener
java·filter
qq_4924484461 小时前
Java实现App自动化(Appium Demo)
java
阿华的代码王国1 小时前
【SpringMVC】——Cookie和Session机制
java·后端·spring·cookie·session·会话
找了一圈尾巴2 小时前
前后端交互通用排序策略
java·交互
哎呦没4 小时前
SpringBoot框架下的资产管理自动化
java·spring boot·后端
m0_571957586 小时前
Java | Leetcode Java题解之第543题二叉树的直径
java·leetcode·题解