Windows下使用WSL和VsCode进行开发

这是我参与更文挑战的第15天,活动详情查看: 更文挑战

介绍

不知道有多少兄弟遇到过和我类似的情况: 在Linux下完美运行的各种依赖换到Windows下疯狂报错

为了解决这个麻烦, 笔者详细研究了如何在Windows下使用WSL和VsCode进行开发, 并踩过一些大坑

特写此篇文章进行总结记录

先列举下前置需求:

  1. Windows机器支持WSL
  2. 了解Linux基础操作
  3. 会使用VsCode

安装配置过程

开启Windows相关功能

控制面板->程序和功能->启用或关闭Windows功能, 勾选如下内容:

image.png

将WSL版本从1升级至2

下载微软官方升级包

如果链接失效请直接去官网查询

安装完成后, 设置WSL默认版本: wsl --set-default-version 2

安装Linux子系统

打开微软商店, 搜索Ubuntu, 笔者建议使用LTS长期支持版本

操作非常傻瓜, 直接安装即可

检查Linux的WSL内核并迁移

使用命令wsl -l -v查看Linux信息:

image.png

如果VERSION为1, 且确定已升级WSL2内核, 使用命令wsl --set-version Ubuntu-20.04 2进行修改

在微软商店安装的Ubuntu, 默认路径为C盘, 这是我们极其不情愿看到的

使用LxRunOffline工具迁移

在Github主页的releases中下载LxRunOffline-vX.X.X-msvc.zip, 解压后在目录运行cmd:

LxRunOffline.exe move -n Ubuntu-20.04 -d D:\WSL\Ubuntu-20.04
复制代码

切换软件源

完成Windows准备工作后, 进入linux系统

国内访问外网速度堪忧, 所以我们先要把软件源切换为清华, 官方地址为mirrors.tuna.tsinghua.edu.cn/help/ubuntu…

按照文档修改配置文件即可, 记得备份

切换完成后刷新资源并进行软件更新:

sudo apt-get update
sudo apt-get upgrade
复制代码

使用Vscode进行编码

在Linux安装后的初始化, 我们设置了一个默认用户

在开始编码前, 我们需要将代码目录的所有者修改为默认用户, 否则会有权限问题:

sudo chown -R User project
复制代码

接下来为VsCode安装插件Remote Development

最后进入代码目录, 只需要使用命令code .即可自动打开VsCode

环境变量的坑

默认情况下, Windows和WSL的环境变量和文件是互通的, 这样对于nodejs或npm的使用会出现问题

笔者暂时采取的解决方案是关闭互通, 创建/etc/wsl.conf:

[interop]
enabled=false
appendWindowsPath=false
复制代码

之后关闭Linux, 在Windows中使用管理员权限的PowerShell重启服务:

net stop LxssManager
net start LxssManager
复制代码

注意, 关闭互通后无法使用code .自动打开VsCode

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享