IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

dykun 2019-11-04

首先要安装WSL

关于安装步骤,参考这篇文章
在IDEA或WebStorm中:
File -> Settings -> Tools -> Terminal
在Shell path处填:
"cmd.exe" /k "wsl.exe"
如图:

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

设置之后的效果:

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

关于WSL(假如你安装的是ubuntu)中的nodejs,安装步骤跟正常在ubuntu上的基本上差不多
推荐使用清华大学的 Nodesource镜像 ,可以装上较新版本的node
安装完之后,建议将npm源设置成国内的
npm config set registry https://registry.npm.taobao.org/
npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/ 
npm config set electron_mirror https://npm.taobao.org/mirrors/electron/
推荐使用 n 来管理node版本
注意:由于全局安装需要sudo权限,这时npm是以root用户运行的,而npm将配置文件储存在用户的home目录下的.npmrc文件中,每个用户使用自己的home目录下的 .npmrc 文件,所以上面切换npm源的命令最好加上sudo在执行一遍,否则在以sudo权限执行npm装包的命令时,npm 还是会从默认的官方源下包,速度极慢。
sudo npm config set registry https://registry.npm.taobao.org/
sudo npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/ 
sudo npm config set electron_mirror https://npm.taobao.org/mirrors/electron/

sudo npm install -g n

# 经过测试,在普通用户下 export NODE_MIRROR=<淘宝源> 之后执行 sudo n latest依然会从官方的源下载,所以建议直接切换到root用户执行,
sudo su
# 设置环境变量,使用淘宝的镜像源
export NODE_MIRROR=https://npm.taobao.org/mirrors/node/
# 下载安装最新版node,需要sudo权限
sudo n latest
# 下载安装稳定版node,需要sudo权限
sudo n stable
# 下载安装指定版本的node,需要sudo权限
sudo n 10.16.1

IDEA / WebStorm 将node切换为WSL中的node

File -> Settings -> Languages & Frameworks -> Node.js and NPM
如图:

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

在下拉列表中选择ubuntu

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

IDEA / WebStorm 会识别出 n 安装的node,也可以选择其他版本的node,n 安装的其他版本的node在WSL中文件系统的路径如下:
/usr/local/n/versions/node

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

按下面的这么填就是了
/usr/local/n/versions/node/<version>/bin/node

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

如果在之前的项目中,用的是Windows下的node装的包,切换成WSL中的node之后,建议最好删掉node_modules目录,然后在Terminal中重新装一下,因为用的是linux下的node,有部分包是平台相关性的,比如node-sass,用linux下的node无法读取用Windows下的node装的包.

WSL 装包测试

清除缓存后第一次装包

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

第二次装包

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

第三次装包,这次用 WebStorm 里的 Terminal

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

再来一次

IDEA/Webstorm使用WSL作为默认的Terminal并配置nodejs

从图中可以看到,在多次安装后,安装速度还是有所加快的,尽管装包的速度也没比Windows版本的node快多少,但WSL好用啊,至少我觉得比Git Bash和cmd好用多了,所以容我夸上一句:

Microsoft,干得漂亮!

相关推荐

芒果先生Mango / 0评论 2017-04-28