内容来自 https://help.sonatype.com/repomanager3/bower-repositories#BowerRepositories-BrowsingBowerRepositoriesandSearchingPackages

nexus3.0版本不仅提供了maven的私服,还可以托管docker、npm、bower甚至是python的仓库,为搭建统一的私服平台提供了便利。

Bower 仓库

* 1.简介
* 2.代理仓库
* 3.本地私服仓库
* 4.公开仓库组
* 5.安装bower
* 6.配置私服下载
* 7.浏览和检索依赖
* 8.上传bower包

简介

Bower是一个前端包管理工具。

NexusOSS是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact。Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。3.0版本之后加入了npm、bower、docker还有.net的仓库管理。

代理仓库

NexusOss可以对bower的外部仓库进行代理,比如代理官方库:https://registry.bower.io 。在官方库速度较慢的情况下非常好用。

创建bower代理库的步骤:

  • 选择创建repository,类型为bower(proxy)
  • 定义仓库名称:bower-proxy
  • 定义代理的仓库地址,例如官方仓库: https://registry.bower.io
  • 选择合适的存储

本地私服仓库

NexusOss支持创建本地私服用于管理bower包。私服仓库扮演了一个权威角色,定义包的URL和名称的关系。

创建本地私服仓库的操作步骤:

  • 选择创建repository,类型为bower(hosted)
  • 定义名称:bower-hosted
  • 选择合适的存储

公开仓库组

推荐使用仓库组暴露Bower仓库地址。仓库组既可以暴露多个代理仓库和多个本地私服仓库,当代理仓库或者私服变动的时候不会影响到使用者。

创建步骤如下:

  • 选择创建repository,类型为bower(group)
  • 定义名称:bower-all
  • 选择合适的存储
  • 添加bower-proxy和bower-hosted仓库到组中

安装bower

通过npm安装:
``` shell
npm install -g bower
$ bower -v
1.7.7
```
使用Bower私服需要添加一个解析自定义URL的组件来完成解析NexusOss的工作。可以通过下面两种方式引入:
```shell
npm install -g bower-nexus3-resolver
```
或者引入到package.json中
```json
"devDependencies" : {
"bower-nexus3-resolver" : "*"
}
```

配置私服下载

一旦配置了Bower私服,就需要配置.bowerrc文件来实现到私服的URL解析。一般需要配置.bowerrc文件,可以配置全局的.bowerrc,位于$HOME目录下,也可以配置在项目内部的.bowerrc文件中。
```json
{
"registry" : {
"search" : [ "http://localhost:8081/repository/bower-all" ]
},
"resolvers" : [ "bower-nexus3-resolver" ]
}
```
测试下效果:

  1. $ bower install jquery
  2. bower jquery#*
  3. not-cached nexus+http://localhost:8081/repository/bower-all/jquery#*
  4. bower jquery#*
  5. resolve nexus+http://localhost:8081/repository/bower-all/jquery#*
  6. bower jquery#*
  7. resolved nexus+http://localhost:8081/repository/bower-all/jquery#2.2.0
  8. bower jquery#^2.2.0 install jquery#2.2.0
  9. jquery#2.2.0 bower_components/jquery

浏览和检索依赖

NexusOSS提供了网页检索和浏览包,当然也可以通过Bower的命令行参数来检索。

上传bower包

发布Bower包,需要配置.bowerrc文件,制定register的位置;需要指定包的git路径。
```json
{
"registry" : {
"search" : [
"http://192.168.1.62:8081/nexus/repository/bower-all"
],
"register" : "http://admin:admin123@192.168.1.62:8081/nexus/repository/bower-hosted"
},
"resolvers" : [ "bower-nexus3-resolver" ]
}
```
执行上传操作:
```shell
bower register example-package git://gitserver/project.git
```
测试安装:
```shell
bower install example-package
```

小结:

上次部分注意的是register的URL必须把授权参数填入,因为NexusOss侧需要权限验证,不写会一直报401的错误。

bower配置私服nexus3的更多相关文章

  1. maven私服nexus3.9安装配置

    maven私服nexus3.9安装配置 私服介绍 私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建.有了私服之后,当 Maven 需要下载构件时,直接请求私服 ...

  2. Maven私服Nexus3.x环境构建操作记录

    Maven介绍Apache Maven是一个创新的软件项目管理和综合工具.Maven提供了一个基于项目对象模型(POM)文件的新概念来管理项目的构建,可以从一个中心资料片管理项目构建,报告和文件.Ma ...

  3. Linux下Maven私服Nexus3.x环境构建操作记录【转】

    Maven介绍Apache Maven是一个创新的软件项目管理和综合工具.Maven提供了一个基于项目对象模型(POM)文件的新概念来管理项目的构建,可以从一个中心资料片管理项目构建,报告和文件.Ma ...

  4. maven私服Nexus3.2的使用

    maven搭建私服的步骤: 分三步: 第一步:下载maven的安装包,然后配置好maven的环境变量. 第二步:将maven的私服Nexus安装好,修改maven的配置文件setting.xml问,在 ...

  5. Linux下Maven私服Nexus3.x环境构建操作记录

    原文地址:https://blog.csdn.net/liupeifeng3514/article/details/79553747 私服介绍 私服是指私有服务器,是架设在局域网的一种特殊的远程仓库, ...

  6. MAVEN总结,整合Eclipse以及配置私服

    对maven的理解 我们知道maven是一个项目管理工具,其核 心特点就是通过maven可以进行jar包的依赖管理,保证jar包版本的一致性,以及可以使多个项目共享jar包,从而能够 在开发大型jav ...

  7. Maven配置私服仓库

    首先就是,最基本的打开maven的配置文件,上面是我自己的习惯,多留一个以备不坏 打开setting配置文件,来修改路径(本人不习惯将所有软件放在C盘,一般都是单独存放盘) 接下来就是公司给你的账户和 ...

  8. 【连载】Maven系列(四)——配置私服

    相关文章 1.<用起来超爽的Maven——入门篇> 2.<用起来超爽的Maven——进阶篇> 3.<Maven系列(三) 进阶> 一.为什么需要私服 有些公司并不提 ...

  9. maven 配置私服 连接

    两种方法: 1.在单个项目的pom.xml中使用 私服的连接地址,这样只对该项目起作用. 2.在maven的setting.xml配置中添加私服的连接地址.这样对所有项目起作用. 本文章只演示第二种方 ...

随机推荐

  1. linux开机步骤

    linux开机启动步骤: 1.bios自检 2.MBR引导 3.引导系统,进入grub菜单 4.加载内核kernel 5.运行第一个进程init 6.读取/etc/inittab 读取运行级别 7.读 ...

  2. Springboot系列:Springboot与Thymeleaf模板引擎整合基础教程(附源码)

    前言 由于在开发My Blog项目时使用了大量的技术整合,针对于部分框架的使用和整合的流程没有做详细的介绍和记录,导致有些朋友用起来有些吃力,因此打算在接下来的时间里做一些基础整合的介绍,当然,可能也 ...

  3. October 28th, 2017 Week 43rd Saturday

    All I ever wanted was a single thing worth fighting for. 我想要的只不过是一件能让我奋不顾身的事业. Stop complaining the ...

  4. python openpyxl.md

    Openpyxl 创建一个工作簿 下面是创建一个工作簿.而每个工作簿至少一个工作表我们可以通过active获取正在运行的工作表. In [1]: from openpyxl import Workbo ...

  5. 转,敏感词过滤,PHP实现的Trie树

    原文地址:http://blog.11034.org/2012-07/trie_in_php.html 项目需求,要做敏感词过滤,对于敏感词本身就是一个CRUD的模块很简单,比较麻烦的就是对各种输入的 ...

  6. Spark项目之电商用户行为分析大数据平台之(五)实时数据采集

  7. Android学习笔记--通过wifi向服务器端发送数据

    (转自http://www.cnblogs.com/zhxiang/archive/2011/07/21/2112825.html) 客户端程序: 1 2 3 4 5 6 7 8 9 10 11 12 ...

  8. 同一域环境下SQLServer DB Failover故障转移配置详解

    前 言:    很多情况下,虽然我们的站点.APIService.Redis等已经做成了分布式架构,但是SQLServer依然还是单体结构,当出现网络异常.服务器宕机时便存在极大的风险,这时候我们需要 ...

  9. scrapy(一)scrapy 安装问题

    一.安装scrapy pip install scrapy 二.出现Microsoft Visual C++ 14.0相关问题 注:若出现以下安装错误 building 'twisted.test.r ...

  10. Leetcode——64. 最小路径和

    题目描述:题目链接 同样对于这个问题,我们可以考虑用动态规划来解决. 解决动态规划常见的三个步骤: 1:问题的归纳.对于 i,j 位置上的最短路径可以用d[ i ][ j ]表示. 2:归纳递推式:d ...