• 淘宝 NPM 镜像使用


    http://www.cnblogs.com/pingfan1990/p/5217368.html

    *******************************

    前言

    因为众所周知的原因,使用node,官方NPM仓库安装依赖包是个看人品的事情,不过有万能的淘宝,所以需要部分调整就可以避免这些原因。(以下内容osxcentos下测试通过)

    淘宝镜像基本使用

    首先是版本管理,NODE更新迭代较快,推荐使用NVM来进行版本管理,因为NVM支持镜像选项,所以,简单设置环境变量即可:

    1
    2
    export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
    export NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs

    其次是NPM仓库:

    1
    npm --registry=https://registry.npm.taobao.org install -g cnpm

    然后使用cnpm来处理一切包安装即可,不过,如果提交包到官方仓库,只能使用NPM,实在不行就开VPN。。。。。

    最后是前端测试经常会用到的几个依赖, chromedriverphantomjsselinium

    export PHANTOMJS_CDNURL=http://npm.taobao.org/mirrors/phantomjs
    export CHROMEDRIVER_CDNURL=http://npm.taobao.org/mirrors/chromedriver
    export SELENIUM_CDNURL=http://npm.taobao.org/mirrorss/selenium

    大部分场景足以应付,不过也有例外。

    使用angular配套的protractor进行E2E测试时,seleniumchromedriver是通过自带的webdriver-manager来管理,目测貌似不支持环境变量的方式,所以需要麻烦一点:

    1
    2
    3
    4
    5
    6
    7
    # 路径为/usr/local/lib/node_modules/protractor/bin/
    cat webdriver-manager
    | gawk '{gsub(/https://chromedriver.storage.googleapis.com//,"http://npm.taobao.org/mirrors/chromedriver/", $0); print $0 }'
    | gawk '{gsub(/https://selenium-release.storage.googleapis.com//,"http://npm.taobao.org/mirrors/selenium/", $0); print $0 }' 
    > driver-manager
    chmod u+x driver-manager
    ln -s /usr/local/lib/node_modules/protractor/bin/driver-manager /usr/local/bin/driver-manager

    以上为自己使用所做,可能略显繁琐。基于自带的webdriver-manager,替换掉相应路径为镜像路径,生成新的driver-manager,然后世界就安静了。

    简简单单,pfan!出来混的,一切都是要还的。
     
  • 相关阅读:
    linux下安装nginx
    Java8聚合操作
    redis持久化选项
    初探redis缓存击穿、穿透、雪崩问题
    Java8lambda表达式
    Java8方法引用
    java8并行计算
    Start Developing iOS Apps Today(中文)
    C#/mono开发Android应用程序入门(二)第一个应用程序(Hello World)(转)
    win8各种开发问题收集及解决
  • 原文地址:https://www.cnblogs.com/zhao1949/p/6337289.html
Copyright © 2020-2023  润新知