Maven仓库

Maven是一个采用纯Java编写的开 源项目管理工具。Maven采用了一种被称之为project object model (POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做POM.xml的文件中,通过该文件,Maven可以管理项目的整个声明周期,包括编 译,构建,测试,发布,报告等等。目前Apache下绝大多数项目都已经采用Maven进行管理。而Maven本身还支持多种插件,可以方便更灵活的控制 项目。 

1.简介

MAVEN是Apache开源组织中的一个跨平台的项目管理工具。

主要功能有项目构建、依赖管理以及项目信息管理。


2.项目构建

项目构建指的是编译、运行单元测试、生成文档、打包、部署等一系列动作。

MAVEN将项目构建过程抽象成为构建生命周期模型,将构建过程中有序的构建任务抽象为构建生命周期阶段,

并且通过1-N个插件目标来具体实现构建生命周期阶段的操作。


3.依赖管理

MAVEN通过一个坐标系统准确地定位每一个构件(JAR文件等)。


Maven 仓库的分类:

maven的仓库只有两大类:1.本地仓库 2.远程仓库,在远程仓库中又分成了3种:2.1 中央仓库 2.2 私服 2.3 其它公共库

1.本地仓库,顾名思义,就是Maven在本地存储构件的地方。

注:maven的本地仓库,在安装maven后并不会创建,它是在第一次执行maven命令的时候才被创建

maven本地仓库的默认位置:无论是Windows还是Linux,在用户的目录下都有一个.m2/repository/的仓库目录,这就是Maven仓库的默认位置

如何更改maven默认的本地仓库的位置:这里要引入一个新的元素:localRepository,它是存在于maven的settings.xml文件中

1.1 更改配置用户范围的本地仓库:先在/.m2/目录下创建settings.xml文件,然后在~/.m2/settings.xml,设置localRepository元素的值为想要的仓库地址

<settings>

 <localRepository>D:project/maven/new_repository</localRepository>

</settings>


2、远程仓库

2.1 说到远程仓库先从 最核心的中央仓库开始,中央仓库是默认的远程仓库,maven在安装的时候,自带的就是中央仓库的配置,所有的maven项目都会继承超级pom,具体的说,包含了下面配置的pom我们就称之为超级pom

<repositories>

    <repository>

      <id>central</id>

      <name>Central Repository</name>

      <url>http://repo.maven.apache.org/maven2</url>

      <layout>default</layout>

      <snapshots>

        <enabled>false</enabled>

      </snapshots>

    </repository>

  </repositories>

中央仓库包含了绝大多数流行的开源Java构件,以及源码、作者信息、SCM、信息、许可证信息等。一般来说,简单的Java项目依赖的构件都可以在这里下载到

2.2 私服

私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的Maven用户使用。当Maven需要下载构件的时候,它从私服请求,如果私服上不存在该构件,则从外部的远程仓库下载,缓存在私服上之后,再为Maven的下载请求提供服务。我们还可以把一些无法从外部仓库下载到的构件上传到私服上。

其他博客:http://blog.youkuaiyun.com/wanghantong/article/details/36427433

http://wentao365.iteye.com/blog/903396

http://www.oracle.com/technetwork/cn/community/java/apache-maven-getting-started-1-406235-zhs.html

转载于:https://my.oschina.net/luyaolove/blog/477674

### Maven 仓库配置和使用指南 Maven 仓库是用于存储项目依赖项的地方,这些依赖项可以是第三方库、插件或其他项目构件。Maven 通过 `pom.xml` 文件来管理项目的依赖关系,并自动从配置的仓库中下载所需的依赖项。Maven 支持多种类型的仓库,包括本地仓库、中央仓库和远程仓库(如阿里云 Maven 仓库)。 #### 配置 Maven 仓库 Maven仓库配置通常在 `settings.xml` 文件中进行。该文件可以位于用户的主目录下(`~/.m2/settings.xml`),也可以位于 Maven 安装目录下的 `conf` 文件夹中。以下是一个配置阿里云 Maven 仓库的示例: ```xml <settings> <mirrors> <mirror> <id>aliyun</id> <mirrorOf>*</mirrorOf> <url>https://maven.aliyun.com/repository/public</url> </mirror> </mirrors> </settings> ``` 上述配置将所有 Maven 请求镜像到阿里云的 Maven 仓库,从而加速依赖项的下载速度。 #### 使用 Maven 仓库 在 `pom.xml` 文件中,可以通过 `<dependencies>` 标签来声明项目所需的依赖项。以下是一个简单的示例: ```xml <project> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>my-project</artifactId> <version>1.0.0</version> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency> </dependencies> </project> ``` 在这个示例中,`junit` 是一个常用的测试框架,版本为 `4.13.2`,并且仅在测试阶段使用。 当执行 Maven 命令(如 `mvn compile` 或 `mvn package`)时,Maven 会根据 `pom.xml` 文件中的依赖声明,从配置的仓库中下载所需的依赖项,并将其存储在本地仓库中,以便后续使用。 #### Maven 仓库的工作原理 Maven 仓库的工作原理主要包括以下几个步骤: 1. **依赖解析**:Maven 会解析 `pom.xml` 文件中的依赖项,并确定所需的构件。 2. **仓库查找**:Maven 会根据配置的仓库(本地、中央或远程仓库)查找所需的构件。 3. **下载依赖**:如果所需的构件不在本地仓库中,Maven 会从远程仓库下载它,并将其存储在本地仓库中。 4. **构建项目**:Maven 使用下载的依赖项来构建项目,并生成最终的构建输出(如 JAR 文件)。 通过这种方式,Maven 能够自动化地管理项目的依赖关系,从而简化项目的构建和管理过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值