zoukankan      html  css  js  c++  java
  • Mac前端装机必备之-n 模块管理多个版本的node.js

    安装

    由于您可能已经拥有了node,所以最简单的安装方法n是通过npm

    sudo npm install -g n

    安装后,将版本n缓存在环境变量指定的目录的node子目录n/versionsN_PREFIX,默认为/usr/local主动 node版本直接安装在N_PREFIX

    为了避免需要sudonnpm全球的安装,建议您或者使用安装到你的主目录N_PREFIX,或采取系统目录的所有权:

    # make cache folder (if missing) and take ownership
    sudo mkdir -p /usr/local/n
    sudo chown -R $(whoami) /usr/local/n
    # take ownership of node install destination folders
    sudo chown -R $(whoami) /usr/local/bin /usr/local/lib /usr/local/include /usr/local/share

    如果npm尚不可用,一种引导安装的方法:

    curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n
    bash n lts
    # Now node and npm are available

    或者,您可以克隆此存储库并

    make install

    安装nbin/n环境变量中指定的目录$PREFIX,默认为/usr/local(请注意,您可能需要使用sudo)。n在自定义位置(例如$CUSTOM_LOCATION/bin/n)安装,请运行PREFIX=$CUSTOM_LOCATION make install

    第三方安装程序

    在具有Homebrew的 macOS上,您可以安装n公式

    brew install n

    在Linux和macOS上,n-install允许直接从GitHub安装;例如:

    curl -L https://git.io/n-install | bash

    正安装多组都PREFIXN_PREFIX$HOME/n,安装n$HOME/n/bin,修改支持炮弹的初始化文件导出N_PREFIX,并添加$HOME/n/binPATH,并安装最新的LTS node版本。

    因此,它n本身及其node管理的所有版本都托管在一个可选的可配置目录中,您以后可以使用随附的n-uninstall脚本将其删除n-updaten自身更新为最新版本。有关更多详细信息,请参见n-install存储库

    安装节点版本

    只需执行n <version>以下载并安装的版本node如果<version>已经下载,n将从其缓存安装。

    n 10.16.0
    n lts

    n自行执行以查看下载的版本,并安装所选的版本。

    $ n
    
      node/4.9.1
    ο node/8.11.3
      node/10.15.0
    
    Use up/down arrow keys to select a version, return key to install, d to delete, q to quit

    (您也可以使用jk在不使用箭头的情况下向上或向下导航。)

    如果活动节点的版本在安装后没有更改,请尝试打开新的外壳,以防发现版本过旧。

    指定节点版本

    有多种方法可以指定n命令的目标节点版本大多数命令使用最新的匹配版本,并 n ls-remote列出多个匹配版本。

    数字版本号可以是完整或不完整的,并带有可选的前导v

    • 4.9.1
    • 8:8.xy版本
    • v6.1:6.1.x版本

    有两个特别有用的版本的标签:

    • lts:最新的长期支持正式发布
    • latestcurrent:最新正式发布

    第一行有一个标签,用于从文件中读取目标版本:

    • auto:从.n-node-version文件读取版本

    支持发布流:

    • argonboroncarbon:代号为LTS版本流

    最后一种形式是使用远程下载文件夹的名称指定其他可用的发行版,还可以选择后面跟随完整或不完整的版本。

    • chakracore-release/latest
    • nightly
    • test/v11.0.0-test20180528
    • rc/10

    删除版本

    删除一些缓存的版本:

    n rm 0.9.4 v0.10.0

    除去当前版本以外的所有缓存版本:

    n prune

    删除已安装的节点和npm(不影响缓存的版本)。这对于恢复到节点的系统版本(如果位于不同的位置),或者如果您不再希望使用节点和npm,或者正在切换到其他管理它们的方式很有用。

    n uninstall

    使用下载的节点版本而不重新安装

    有三个命令可直接使用您下载的版本node,而无需重新安装。

    您可以显示下载版本的路径:

    $ n which 6.14.3
    /usr/local/n/versions/6.14.3/bin/node

    node使用以下n run命令运行下载的版本

    n run 8.11.3 --debug some.js

    或执行命令和PATH修改,以便nodenpm将从下载的node版本。(注意:这npm将与另一个空的全局node_modules目录一起使用,您不应以这种方式安装全局模块。)

    n exec 10 my-script --fast test

    保留npm

    一个node安装通常包括npm为好,但你可能希望保留的更新npm,并npx让他们出的安装使用--preserve(需要rsync的):

    $ npm install -g npm@latest
    ...
    $ npm --version
    6.13.7
    $ n -p 8
       installed : v8.17.0
    $ npm --version
    6.13.7

    您可以通过设置N_PRESERVE_NPM为非空字符串来将其设置默认值

    export N_PRESERVE_NPM=1

    无论环境变量如何,您都可以明确获得所需的行为:

    n --preserve nightly
    n --no-preserve latest

    可以从下载命令行帮助n --help

    列出可下载的匹配远程版本:

    n ls-remote lts
    n ls-remote latest
    n lsr 10
    n --all lsr

    列出缓存中的下载版本:

    n ls

    显示诊断以帮助解决问题:

    n doctor

    自订来源

    如果您想使用与默认https://nodejs.org/dist/具有相同布局的其他节点镜像,​​则可以定义N_NODE_MIRROR最常见的例子是中国的用户可以定义:

    export N_NODE_MIRROR=https://npm.taobao.org/mirrors/node

    还有N_NODE_DOWNLOAD_MIRROR一个与默认https://nodejs.org/download具有相同布局的其他镜像

    定制架构

    默认情况下,n选择与您的系统体系结构匹配的二进制文件,例如,n将为64位系统下载64位二进制文​​件。您可以使用-a--arch选项覆盖它

    下载并使用最新的32位版本的node

    n --arch x86 latest

    可选环境变量

    n命令/usr/local默认下载并安装到,但是您可以通过定义覆盖此位置N_PREFIX要更改位置$HOME/.n,请在外壳初始化文件中添加以下内容:

    export N_PREFIX=$HOME/.n
    export PATH=$N_PREFIX/bin:$PATH

    n如果系统上的tar很可能支持xz解压缩,则默认使用xz压缩节点tarball进行下载。您可以通过将环境变量设置为零或非零来覆盖自动选择:

    export N_USE_XZ=0 # to disable
    export N_USE_XZ=1 # to enable

    无论环境变量如何,您都可以明确获得所需的行为:

    n install --use-xz nightly
    n install --no-use-xz latest

    简单来说:

    怎么运行的

    n下载预编译的node软件包并安装到单个前缀(例如/usr/local)。这将覆盖以前的版本。bin位置文件夹应位于您文件夹中PATH(例如/usr/local/bin)。

    下载内容保存在缓存文件夹中,以用于重新安装。也可以使用n whichn run进行有限的下载n exec

    全局npm软件包不会被安装更改npm,只是它本身是node安装的一部分

  • 相关阅读:
    使用蓝图构建Flask项目目录
    python上下文管理器细读
    【LiteOS】STM32F103-LiteOS移植教程(详细篇)
    OSX 下 sftp 上传目录到服务器
    Homestead window10 storage:link 不能建立符号链接的处理办法
    Laravel Carbon 简明使用
    VMWare 虚拟机挂载 Homestead NFS 进行老项目(基于 Brophp)维护
    winnfsd 操作
    windows10 查看进程端口的情况
    NFS各个版本之间的比较
  • 原文地址:https://www.cnblogs.com/xfcao/p/13062423.html
Copyright © 2011-2022 走看看