引言:
很久没有在windows上配过node, 记得以前node环境变量是要加 NODE_PATH 到用户变量,再在系统变量引入NODE_PATH的,而npm install的全局包目录会存放在C:/Users[用户]/administrator[你的计算机名字]/AppData/Roaming/npm目录下,而现在貌似有更高级的做法!

传统方法总结:
npm包全局目录:C:/Users/[username]/AppData/Roaming/npm/node_modules
npm包全局命令目录:C:/Users/[username]/AppData/Roaming/npm
npm实际去找全局命令的目录:C:/Users/[username]/.npmrc 文件内容的prefix值
npm包全局cache目录:C:/Users/[username]/.npmrc 文件内容的cache值
需要配置系统环境变量:计算机->属性->高级系统配置->环境变量->PATH/NODE_PATH…balabala~~~
一、node配置新方法( 以windows为例 )
.npmrc位置 C:/Users/[username]/.npmrc
在node安装目录创建/nodejs/node_global、/nodejs/node_cache两个文件夹存放全局包
本例node安装目录D:/node
本例成功后全局包安装的包目录D:/node/nodejs/node_global/lib/node_modules
1.node安装目录

安装node到[D:/node]下

2. 修改默认的全局目录
方法一: 到node安装目录[D:/node]执行以下命令:

npm config set prefix D:/node/nodejs/node_global/ //全局包目录,就在node安装目录新建了个nodejs文件夹存放
npm config set cache D:/ndoe/nodejs/node_cache/ //全局包缓存目录,就在node安装目录新建了个nodejs文件夹存放

方法二

直接修改C:/Users/[username]/.npmrc文件的cache值和prefix值,文件如下:

prefix=D:\node\nodejs\node_global
cache=D:\node\nodejs\node_cache
registry=https://registry.npm.taobao.org/

3.配置环境变量
计算机->属性->高级系统配置->环境变量->用户变量->编辑path,添加`global“目录如下:

PATH: D:\node\nodejs\node_global\;

总结:

不需要添加系统环境变量NODE_PATH,只需编辑用户环境变量
包安装统一到node安装包目录,便于管理查询
只需修改.npmrc一个文件
之前path可能会产生影响,不生效请删除原环境path中node相关内容,尝试重启机器
二、Linux node/npm初始化环境变量的配置
1. .npmrc修改
.npmrc文件位置 ~/.npmrc
依旧创建node_global、node_cache两个文件夹存放全局包
本例node安装目录为 /SOFTWARE/node-v8.9.4-linux-x64/
step1:

vi ~/.npmrc

step2:
输入以下内容

prefix=/SOFTWARE/node-v8.9.4-linux-x64/nodejs/node_global
cache=/SOFTWARE/node-v8.9.4-linux-x64/nodejs/node_cache/

/SOFTWARE/node-v8.9.4-linux-x64/是我的安装包路径,跟你实际情况替换

step1 & step2 也可以直接敲如以下命令

npm config set prefix /SOFTWARE/node-v8.9.4-linux-x64/nodejs/node_global/ //全局包目录,就在node安装目录新建了个nodejs文件夹存放
npm config set cache /SOFTWARE/node-v8.9.4-linux-x64/nodejs/node_cache/ //全局包缓存目录,就在node安装目录新建了个nodejs文件夹存放

2.全局变量配置
step1:

vi /etc/profie

step2:
输入以下内容,加入NODE_PATH等变量

NODE_HOME=/SOFTWARE/node-v8.9.4-linux-x64
NODE_PATH=$NODE_HOME/nodejs/node_global/:$PATH
PATH=$NODE_PATH/bin:$PATH

step3: 测试

pm2 // 如果未配置成功,会出现pm2: command not found

---------------------
作者:jyjin
来源:CSDN
原文:https://blog.csdn.net/jianleking/article/details/79130667
版权声明:本文为博主原创文章,转载请附上博文链接!

node环境变量配置,npm环境变量配置的更多相关文章

  1. mac上配置apidoc环境

    1. 安装node.js 和npm 前往 https://nodejs.org/en/ 下载node.js的最新版本,双击.pkg进行安装 在终端输入 node -v ,如正确输出版本号即安装成功 ( ...

  2. 零基础学习前端1-1配置node及npm环境变量

    零基础学习前端1-1配置node及npm环境变量 ## 1-1配置node及npm环境变量 首先:下载node 可以直接去官方网站下载 1.首先从官网下载安装包 https://nodejs.org/ ...

  3. Windows下NodeJS安装与npm环境变量配置

    node.js下载:https://nodejs.org/en/download/ 参考:https://www.jianshu.com/p/812de13f1276 1.安装过程基本直接" ...

  4. node配置运行环境变量;

    node express 在开发环境和生产环境运行的代码是不一样的, 通常是先配置好的,在开发环境运行一套代码,在生产环境运行另一套代码, 开发环境 development, 生产环境producti ...

  5. windows配置jdk环境变量、mysql环境变量、tomcat环境变量、maven环境变量、git环境变量、node环境变量

    一.windows配置各种环境变量后 path 路径下的目录: 二.windows 配置各种环境变量的目的: 为windows系统添加上各种环境对应的命令 举例,为什么要添加jdk的bin目录,是因为 ...

  6. Windows系统环境变量之path环境变量(Java, Python环境变量配置)

    系统: Windows10 path系统环境变量的作用: Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外 ...

  7. typescript 起步之安装及配置 ts-node 环境变量

    最近vue 3.0 版本发布,让我认识到 typescript 将占有越来越重要的地位,所以我也开启了typescript学习之旅. 要想编写第一个 hello typescript 程序,当然要经过 ...

  8. Windows环境安装tesseract-ocr 4.00并配置环境变量

    最近要做文字识别,不让直接用别人的接口,所以只能尝试去用开源的类库.tesseract-ocr是惠普公司开源的一个文字识别项目,通过它可以快速搭建图文识别系统,帮助我们开发出能识别图片的ocr系统.因 ...

  9. .NET Core采用的全新配置系统[5]: 聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]

    较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参 ...

  10. CentOS下配置java环境变量classpath

    一. 需要配置的环境变量1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的bin ...

随机推荐

  1. spring:按照Bean的名称自动装配User

    本实例将介绍如何按照Bean 的名称自动装配 User 对象! <bean> 元素的 autowire 属性负责自动装配 <bean> 标签,定义 JavaBean 的属性.这 ...

  2. poj 1741(树的点分治)

    Tree Give a tree with n vertices,each edge has a length(positive integer less than 1001). Define dis ...

  3. css定位、position与float同时使用的情况

    一.css定位 CSS 有三种基本的定位机制:普通流.浮动和绝对定位. 1.普通流:未专门指定的元素都在普通流中定位,position:static/relative;和float:none;也在普通 ...

  4. go之switch

    switch 条件语句一 格式 switch initialization{ case v1: // do something case v2: // do something case v2: // ...

  5. git add -A (用该命令添加文件时报错)

    前言 最近在学着不使用github客户端,而直接用git命令上传代码至github,当使用命令 git add -A 添加所有项目文件时报错    老实说我是蒙蔽的,因为从来没有遇到过这个错,确认输入 ...

  6. CALayer帧动画

    CALayer帧动画 _sunLayer = [[CALayer alloc]init]; _sunLayer.contents = (id)[UIImage imageNamed:@"su ...

  7. BZOJ 3831 单调队列DP

    思路: 这好像是我刚学单调性的时候做的题 (我是不会告诉你 我被这题教做人了的...) i-stk[head]>k 删队头 f[stk[tail]]>f[i]||(f[stk[tail]] ...

  8. ListView使用、ListView优化和遇到的问题

    1.先写遇到的问题: a.ListView只显示一个item. listview只显示一个item,并且做了listview的点击事件监听打印 Bean 对象的属性和哈希值,发现只有显示的那个 Bea ...

  9. 【PostgreSQL-9.6.3】如何实现非自动提交

    我们在使用psql工具操作数据库时,事务是自动提交的.也就是说,当我们执行完一条insert或者delete语句后,在不输入commit情况下,这条语句也是提交的.如果不想自动提交,可以使用以下两种方 ...

  10. 【Oracle】truncate分区表

    分区表是生产中常用的一种表,它可以实现数据的按类存放,极大的提高了数据的查询及维护.当我们不需要某一分区的数据时,可以采用truncate来清空分区.实验如下: SQL)) partition by ...