一、简介
想要下载远程maven仓库中的jar,需要用到aether api。简单的来说我们需要远程仓库地址、用户名、密码以及maven信息等。
在aether中,针对这些信息,有着自己的类库,
下载jar主要用到:RepositorySystem、RepositorySystemSession、RemoteRepository、LocalRepository
RepositorySystem:相当于掌控全局的操作者,可以配置本地仓库对象管理器(传入本地仓库对象)
RepositorySystemSession:
RemoteRepository:相当于远程仓库
LocalRepository:相当于代表本地仓库(也可以理解为想要下载的位置)
二、具体代码:
1、pom文件:
<properties>
<aetherVersion>1.0.0</aetherVersion>
<mavenVersion>3.1.0</mavenVersion>
<wagonVersion>1.0</wagonVersion>
</properties>
<dependencies>
<!-- aether下载jar start -->
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-api</artifactId>
<version>${aetherVersion}</version>
</dependency>
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-util</artifactId>
<version>${aetherVersion}</version>
</dependency>
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-impl</artifactId>
<version>${aetherVersion}</version>
</dependency>
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-connector-basic</artifactId>
<version>${aetherVersion}</version>
</dependency>
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-transport-file</artifactId>
<version>${aetherVersion}</version>
</dependency>
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-transport-http</artifactId>
<version>${aetherVersion}</version>
</dependency>
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-transport-wagon</artifactId>
<version>${aetherVersion}</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-aether-provider</artifactId>
<version>${mavenVersion}</v