在WSL中安装node的问题与解决

本文介绍了如何在WSL环境下下载并配置Node.js,包括通过wget下载安装包,tar解压,将Node.js移动到指定目录,并通过两种方式设置环境变量。在配置过程中遇到了npm命令执行出错的问题,原因是Windows与Linux环境变量的杂糅。通过调整环境变量的顺序解决了此问题。
摘要由CSDN通过智能技术生成

前言

由于下载WSL+cmder后,再也不想打开Windows的命令行了,便想将Windows下的环境变量也在WSL中设置一份,Node即其中之一。由于Windows二进制文件与linux的不兼容,所以是不能直接使用Windows下的环境变量的。于是,便需要自己手动在linux中下载node。

下载

在linux下,下载软件方式众多。由于我不太喜欢用apt-get进行下载,便准备自行下载。

首先,找到nodejs官网上编译后的linux下载安装包的链接(此处不选择源码下载,懒于编译)。

下载安装包:wget https://nodejs.org/dist/v10.15.1/node-v10.15.1-linux-x64.tar.xz

解压安装包:tar xvf node-v10.15.1-linux-x64.tar.xz

将解压后的文件移动到/usr/app目录下,这是我自定义的软件下载目录。

配置环境变量(第一种)

将nodejs加入环境变量中

修改配置全局环境变量配置文件:vim /etc/profile (需要root权限)

添加以下内容:

export NODE_HOME=/usr/app/node-v10.15.1-linux-x64
export PATH=$PATH:$NODE_HOME/bin

大意是在所有的环境变量之后,加入node可执行文件的目录(即node环境变量)。

使用配置文件生效:source /etc/profile 或者 重启

配置配置环境变量(第二种)

将可执行文件软链接到/usr/bin/目录下,该目录包涵了所有的可执行命令。

ln -s /usr/app/node-v10.15.1-linux-x64/bin/node /usr/bin/
ln -s /usr/app/node-v10.15.1-linux-x64/bin/npm /usr/bin/

注意:软链接一定要用绝对路径

问题

node -v 查看无误

npm -v 查看出错。报错原因:它找到Windows下node环境变量中npm执行文件,出错。

原因

echo $PATH 查看环境变量,发现其中有两个nodejs环境变量路径,前一个为windows的,后一个为linux的。WSL的缺点之处便在于:环境变量杂糅。

似乎找到了问题所在:由于Windows的node环境变量优先于linux的,所以系统先匹配到Windows的node环境变量。但是,node -v为什么可以执行呢?我也无从而知了(简称无知)。

解决

修改/etc/profile文件

export PATH=$PATH:$NODE_HOME/bin 换成 export PATH=$NODE_HOME/bin:$PATH

即将node环境变量置于所有环境变量之前。修改完别忘记source /etc/profile


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北纬32.6

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值