背景说明:
事情是这样的,博主最近在研究一个开源项目,其UI模块使用了GruntBower构建管理,本来这也没什么,技术人嘛,遇到了新家伙拿下就好了,但事情却出了点意外,由于咱天朝这个“墙”的问题,Bower死活都运行不过去,折腾了好几天才勉强搞定,故而,记录下来,避免再次采坑,同时,也希望能帮助到有需要的朋友。

目录

  • 1.Bower项目结构
    • bower.json文件
    • .bowerrc文件
  • 2.常用的命令说明
    • bower init
    • bower search 包名
    • bower info 包名 or 包名#版本号
    • bower install 包名 or 包名#版本号 [--save or -S] [--offline]
    • bower uninstall 包名 [--save or -S]
    • bower cache list
    • bower cache clean
    • bower prune 包名
    • bower version [patch|minor|major] 版本号
    • bower version --message '' or -m '%s'
  • 3.Bower私服搭建
    • 安装说明
    • private-bower配置
    • 运行private-bower
  • 4.处理Git,Bower下载问题
    • 配置上网代理
    • private-bower 代理配置
    • 配置Git 代理

1.Bower项目结构

bower.json文件

每一个Bower项目都会有一个名叫“bower.json”的文件,其内容为对当前项目的描述,包括名称,版本,依赖等等,参考如下

.bowerrc文件

该文件是bower的配置文件,根据其所在位置不同其作用域也会不同,内容参考如下:

directory:配置了依赖组件的下载目录
registry:指定了Bower服务器地址,该项默认值为官方提供的查询入口
strict-ssl:指定在使用https协议时是否验证证书

补充说明:
Bower 必须与git项目管理工具配合使用(似乎SVN也可以,未尝试),其结构大概如下:

更多配置项请参考传送门

最后,附上一个完整的项目结构图

2.常用的命令说明

在命令行窗口,进入到bower.json同级目录中,我们可以使用bower 附带的命令进行管理操作,以下列举了一些常用命令,如下:

bower init

初始化一个bower项目的命令,根据提示一步一步输入对应内容,最终得到的即bower.json文件。

bower search 包名

查找指定的组件包,该命令会请求bower服务器进行查询,若查询到相关组件,则会列出可用的组件

补充说明:我们也可以通过web去官网查询需要的组件包。 官方传送门

bower info 包名 or 包名#版本号

查看指定组件包的信息

bower install 包名 or 包名#版本号 [–save or -S] [–offline]

安装指定的组件,其中**–save** 表示将安装的组件包自动添加到bower.json dependences 节中,–offline 表示使用离线安装,bower将使用本地cache。

bower uninstall 包名 [–save or -S]

从directory目录卸载指定的组件包

bower cache list

显示当前本地缓存的组件包

bower cache clean

清除本地缓存的组件包

bower prune 包名

移除本地的指定的包

bower version [patch|minor|major] 版本号

更新项目版本号

bower version --message ‘’ or -m ‘%s’

自定义git提交信息,其中%s 代表版本号

更多信息请前往此处查看,传送门

3.Bower私服搭建

操作系统:CentOS Linux release 7.5.1804 (Core)

安装说明

  • Nodejs:v10.15.3
    安装简单,就不做赘述了,去官网下载tar.xz包,解压缩,添加环境变量,如图:

    验证安装,确保node -v正常执行。

  • Git: git version 1.8.3.1
    通过yum安装,同样不做赘述,命令如下
    yum install -y git git-daemon
    验证安装,确保 git --version 能正常输出。

  • 安装private-bower
    npm install -g private-bower

private-bower配置

cd /usr/local & mkdir private-bower & vi my-bower-cfg.json

关键参数说明:

  • server : 配置服务监听地址和端口等信息
  • registryFile: 保存注册组件索引的文件
  • public: 公开组件配置部分,包括服务器地址,索引写入文件等
  • repositorycache: 组件缓存配置,git对应git管理工具,svn对应svn管理工具,上述配置文件中开启了git的缓存,此处建议开启git或者svn,避免过多的网络请求,毕竟国内嘛,大家知道即可
  • proxySettings:代理设置,用于private-bower 像公开库查询索引等
  • log4js : private-bower日志配置

更多更详细的信息请前往官方查看,传送门

补充log4j.conf.json内容:

{"appenders": [{"type": "dateFile","filename": "private-bower.log","pattern": "-yyyy-MM-dd","alwaysIncludePattern": false},{"type": "console"}
],
"replaceConsole": true
}

运行private-bower

nohup private-bower --config 配置文件 2>&1 &
最终的目录结构如图:

4.处理Git,Bower下载问题

前置条件:一台能去国外的电脑,这里就叫电脑A

配置上网代理

在电脑A上开启代理,博主这里使用的代理软件是fiddler4,配置如下:



这里的8888即代理端口。

private-bower 代理配置

在其配置文件中增加proxySettings节,内容如下:

    "proxySettings" : {"enabled": true,"host": "电脑A的地址","port": 8888,"tunnel": false}

之后,重启private-bower服务。

配置Git 代理

private-bower所在服务器以及bower客户端部分都需要配置,避免证书验证文件导致失败,如下:

编辑 .gitconfig文件
vi ~/.gitconfig

[http]proxy = http://电脑A的地址:8888
[https]proxy = http://电脑A的地址:8888sslVerify = false

或者

git config --global http.proxy http://电脑A的地址:8888
git config --global https.proxy http://电脑A的地址:8888
git config --global https.sslVerify "false"

至此,Bower的基本应用就介绍完毕。


Bower 基本应用介绍相关推荐

  1. Bower介绍及用法(转)

    2019独角兽企业重金招聘Python工程师标准>>> Bower介绍 2014.05.10 1. bower介绍 Bower 是用于 web 前端开发的包管理器.对于前端包管理方面 ...

  2. bower解决js的依赖管理

    为什么80%的码农都做不了架构师?>>>    1. bower介绍 Bower 是 twitter 推出的一款包管理工具,基于nodejs的模块化思想,把功能分散到各个模块中,让模 ...

  3. Windows环境下的NodeJS+NPM+Bower安装配置

    NodeJS介绍: Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的 易于扩展的网络应用· Node.js 借助事件驱动, 非阻塞I/O模型变 ...

  4. angular1配合gulp和bower使用

    一 安装gulp和bower gulp安装: npm install -g gulp bower安装: npm install -g bower ==注:== angularjs的一些包文件我们是通过 ...

  5. 简介Gulp, Grunt, Bower, 和 Npm 对Visual Studio的支持

    [原文发表地址]Introducing Gulp, Grunt, Bower, and npm support for Visual Studio Web 开发,特别是前端 Web 开发,正迅速变得像 ...

  6. Web前端开发必备:《Jquery实战》第3版 介绍

    目标读者 本书适合想深入学习jQuery的Web开发人员.全栈工程师.架构师.jQuery是互联网上最流行的JavaScript框架.本书的目标是希望读者成为Web高级开发人员,无论起点如何.本书深入 ...

  7. Day 1: Bower —— 管理你的客户端依赖关系

    我决定将第一天的学习主题选为Bower. 什么是Bower? Bower是一个客户端技术的软件包管理器,它可用于搜索.安装和卸载如JavaScript.HTML.CSS之类的网络资源.其他一些建立在B ...

  8. Bower 使用指南

    Bower是一个包管理工具.包的内容没有限制,比如:js库,框架,图片/字体资源等等或者它们的组合都可以,只要是你需要的就行,你也可以打包一些内容通过在bower上登记注册公开对外发布(当然Bower ...

  9. 90.bower解决js的依赖管理

    转自:https://blog.csdn.net/u011537073/article/details/52951122 前言 一个新的web项目开始,我们总是很自然地去下载需要用到的js类库文件,比 ...

最新文章

  1. C++_类和结构体所占内存大小,静态成员问题
  2. UDP收/发广播包原理及步骤
  3. 算法应用 ---拆分字符串为n节字符
  4. jquery ajax html方法吗,jQuery ajax方法
  5. 《C语言程序设计》王希杰 课后答案
  6. SpringBoot 自动装配原理
  7. Android复习资料
  8. C# 子类实例化基类 基类使用不了子类的方法_C#委托事件机制:事件的完整声明,触发和事件的本质(6)...
  9. git 提交代码的好习惯
  10. 抓包工具——【Mac】Charles的下载和安装
  11. conda install labelimg 预定标签类别
  12. 打开360浏览器显示无法连接服务器错误,最近360浏览器老是无法打开网页,提示错误如图,但是只要刷新就可以打开了,这是怎么回事?...
  13. 【高等数学】第二章 导数与微分——第一节 导数的概念
  14. php第三方阿里云接口
  15. 应届毕业生北京租房经验
  16. 【BOOST C++字串专题11】Boost.Spirit(一)
  17. 【知乎问题】如何让不懂编程的人感受到编程的魅力?
  18. 【PADS9.5】PADS Logic 绘制原理图
  19. 联想笔记本电脑——开启BIOS/CPU开启虚拟化(VT)
  20. Hive join 优化实战

热门文章

  1. I am David
  2. AI作文助手v1.0好头而烦恼吗?
  3. 智能车基础学习电池与电机
  4. 各大IT技术博客排行榜
  5. wsl 固定ip 方法 一劳永逸
  6. ❤️强烈推荐!Word、Excel、PPT、PDF在线预览解决方案
  7. 结构体枚举联合详解(附例题解析)
  8. 可以动态翻转和查询的 01最长不降序列
  9. 永不放弃——提高班开学之寄语
  10. [算法]-最短路径算法总结