从Nexus私服下载和上传资源(一)

从私服中下载资源

首先要明确将资源下载到哪里

找到maven 配置文件settings.xml 文件,添加如下配置:
1、添加镜像配置;将所有访问外网仓库的请求指向私服;

1     <mirror>
2       <!-- 此镜像一般用来作为公司第三方引用基础类库镜像,是所有仓库的镜像地址 -->
3       <id>nexus</id>
4       <!-- 为*表示为所有的仓库做镜像,有了这个配置,所有的构建都会包含public组,如果你想包含public-snapshots组,
5           你必须添加public-snapshots这个Profile,通过在命令行使用如下的 -P 标志:$ mvn -P public-snapshots clean install -->
6       <mirrorOf>*</mirrorOf>
7       <url>http://localhost:8081/nexus/content/groups/public</url>
8     </mirror>

  注:url标签连接是上方划链接,必须一致

2、添加仓库配置;(注意:仓库的配置是可以在 pom.xml 中配置的;优先级大于总配置文件settings.xml)

 1   <profile>
 2       <id>nexus</id>
 3       <!-- 仓库。仓库是Maven用来填充构建系统本地仓库所使用的一组远程项目。而Maven是从本地仓库中使用其插件和依赖。
 4           不同的远程仓库可能含有不同的项目,而在某个激活的profile下,可能定义了一些仓库来搜索需要的发布版或快照版构件。有了Nexus,这些应该交由Nexus完成 -->
 5       <!-- 所有请求均通过镜像 -->
 6       <repositories>
 7         <repository>
 8           <id>central</id>
 9           <!-- 虚拟的URL形式,指向镜像的URL,因为所有的镜像都是用的是nexus,这里的central实际上指向的是http://repos.d.xxx.com/nexus/content/groups/public -->
10           <url>https://repo1.maven.org/maven2/</url>
11           <!-- 表示可以从这个仓库下载releases版本的构件-->
12           <releases><enabled>true</enabled></releases>
13           <!-- 表示可以从这个仓库下载snapshot版本的构件 -->
14           <snapshots><enabled>true</enabled></snapshots>
15         </repository>
16       </repositories>
17      
18      <!-- 插件仓库。仓库是两种主要构件的家。第一种构件被用作其它构件的依赖。这是中央仓库中存储大部分构件类型。
19          另外一种构件类型是插件。Maven插件是一种特殊类型的构件。由于这个原因,插件仓库独立于其它仓库。
20         pluginRepositories元素的结构和repositories元素的结构类似。每个pluginRepository元素指定一个Maven可以用来寻找新插件的远程地址。 -->  
21      <pluginRepositories>
22         <pluginRepository>
23           <id>central</id>
24           <url>https://repo1.maven.org/maven2/</url>
25           <releases><enabled>true</enabled></releases>
26           <snapshots><enabled>true</enabled></snapshots>
27         </pluginRepository>
28       </pluginRepositories>
29     </profile>

url地址为中央仓库的地址,无法改变。

将请求拦截,再转移至上方镜像,以上两个内容配合使用。

3、生效配置

1   <activeProfiles>
2     <activeProfile>nexus</activeProfile>
3   </activeProfiles>

流程总结:

先是效了一个nexus请求,然后拦截中央仓库的请求和插件的请求,通过id找到上方的id,就转到了组仓库,租仓库就会从我们配置好的仓库依次去查找jar包,找到后,就会下载到maven的本地仓库中。

 以上主要内容就配置完毕了,接下来进入eclipse,进行maven的更新。

 

jar包上传:

点击后,可看到以下内容:

接下来进行坐标的配置(坐标可自行定制)

选择GAV Parameters

自定义进行以下配置:

之后,再次点击下方的Upload Artifact(s),会提示:

以上内容我们就成功的将oracle的jar包上传到了第三方的宿主仓库。

接下来验证jar包是否上传成功,点击Browse Storage→Refresh,可以看到,上传成功

还有一个问题,此时本地仓库时没有这个文件的。我们需要将jar包从私服中下载到本地。

 点击ojdbc6-11.0.0.jar

右侧展现出了我们要引用的jar包的坐标,将该坐标直接复制,然后粘贴到我们使用的pom.xml中的dependencies

 1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 2     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 3     <modelVersion>4.0.0</modelVersion>
 4     <groupId>cn.sm1234</groupId>
 5     <artifactId>sm1234-service</artifactId>
 6     <version>0.0.1-SNAPSHOT</version>
 7     <description>这是一个service模块</description>
 8 
 9     <!-- 引用ojdbc.jar -->
10     <dependencies>
11         <dependency>
12             <groupId>com.oracle</groupId>
13             <artifactId>ojdbc6</artifactId>
14             <version>11.0.0</version>
15         </dependency>
16     </dependencies>
17 
18 </project>

保存。我们可以发现maven先会到本地仓库中查找。

 

本地仓库:该jar包是从私服中下载的

流程描述:

从私服下载jar包到本地仓库,再从本地仓库引用到本地的项目的过程

posted @ 2018-12-19 15:34  清晨的第一抹阳光  阅读(1789)  评论(0编辑  收藏  举报