当前位置: 首页 > news >正文

在 Windows上用WSL和VSCode进行Linux开发环境配置

在开发过程中,许多开发者需要在 Linux 环境中编写、调试和运行代码。然而,直接安装 Linux 系统可能不是最便捷的选择,尤其是对于 Windows 用户。幸运的是,Windows Subsystem for Linux(WSL)为开发者提供了一种无缝体验,可以让我们在 Windows 上运行 Linux 环境。结合 VS Code 的强大功能,可以轻松地在 Windows 上实现 Linux 开发环境的配置和开发。

ps: vmware也可,学习使用大模型的话操作本地的GPU有点费劲,装个双系统也可以


安装前设置

控制面板中设置启动Hyper-V和使用于Linux的Windows子系统
在这里插入图片描述
在这里插入图片描述

1. 安装 WSL(Windows Subsystem for Linux)

a. 启用 WSL 功能

首先,我们需要启用 WSL 功能。打开 PowerShell(确保是以管理员身份运行),执行以下命令:

wsl --install

该命令将自动启用 WSL,并安装最新版本的 WSL 2。如果你使用的是 Windows 10,可能需要手动启用 WSL 和虚拟机平台,使用以下命令:

wsl --set-default-version 2
b. 安装 Linux 发行版

安装完 WSL 后,系统会提示你从 Microsoft Store 安装一个 Linux 发行版。最常用的发行版是 Ubuntu,你可以直接在 Microsoft Store 中搜索 Ubuntu,点击 安装

c. 配置 Ubuntu

安装完成后,点击 启动,开始配置你的 Ubuntu 环境。此时,你需要设置一个 用户名密码,这些将在 Linux 环境中使用。


2. 安装和配置 VS Code

a. 下载和安装 VS Code

前往 VS Code 官网 下载并安装最新版本的 Visual Studio Code

b. 安装 VS Code 的 WSL 插件

为了让 VS Code 支持远程开发,我们需要安装 WSL 插件。打开 VS Code,点击左侧 扩展(Extensions)按钮,搜索并安装 Remote - WSL 插件(由 Microsoft 提供)。

在这里插入图片描述

安装完成后,重启 VS Code。

c. 连接到 WSL

安装插件后,按下 Ctrl+Shift+P 打开命令面板,输入并选择 Remote-WSL: New Window。VS Code 会自动连接到你的 WSL 环境,并在新的窗口中打开。你现在已经进入了完全的 Linux 开发环境。
在这里插入图片描述


3. 使用 VS Code 在 WSL 中进行开发

在这里插入图片描述

a. 打开项目

连接到 WSL 后,你可以通过 VS Code文件(File)菜单选择 打开文件夹(Open Folder),然后选择你在 WSL 环境中存储的项目文件夹,开始编辑代码。

b. 在 WSL 中安装开发工具

你可以通过 VS Code 内置终端(按 `Ctrl + `` 打开)直接在 WSL 中运行命令。比如,想要安装 Node.js,可以使用以下命令:

sudo apt update
sudo apt install nodejs
sudo apt install npm

在终端中安装的所有工具和依赖将直接在 WSL 环境中生效,这样你就可以像在 Linux 系统上一样开发。

c. 调试代码

VS Code 允许你在 WSL 环境中直接调试代码,支持包括 Python、Node.js 等多种语言的调试。你可以通过设置断点、查看变量值等方式,轻松调试代码。


4. 可选:安装其他插件

除了 Remote - WSL 插件外,你还可以根据需要安装更多的 VS Code 插件来提高工作效率。例如,安装 Python 插件用于 Python 开发,安装 C++ 插件用于 C++ 开发等。安装后的插件将能够在 WSL 环境中正常工作。

http://www.dtcms.com/a/290740.html

相关文章:

  • 解决OpenHarmony中找不到pthread_cancel和pthread_setcanceltype等libc符号的问题
  • python学智能算法(二十七)|SVM-拉格朗日函数求解上
  • SVM(Support Vector Machine)从入门到精通
  • 部署zabbox企业级分布式监控
  • 软件卸载:金山毒霸怎么卸载?【图文讲解】【小白专属】
  • freertos双向链表的插入
  • AI知识点——MCP
  • 如何使用终端查看任意Ubuntu的版本信息
  • 使用Langchain调用模型上下文协议 (MCP)服务
  • 中文分词模拟器 - 华为OD统一考试(Java 题解)
  • CS231n-2017 Lecture5神经网络笔记
  • 【Java EE初阶 --- 网络原理】应用层---HTTP(HTTPS)协议
  • 内网与外网是通过什么进行传输的?内外网文件传输的安全方法
  • Java从入门到精通 - 面向对象高级(三)
  • kafka 生产和消费 性能测试工具 kafka-producer-perf-test.sh kafka-consumer-perf-test.sh
  • kafka 生产消息和消费消息 kafka-console-producer.sh kafka-console-consumer.sh
  • Python 进阶(六): Word 基本操作
  • ROS 与 Ubuntu 版本的对应关系
  • 初学者STM32—USART
  • 了解类加载器吗?类加载器的类型有哪些?
  • Java 大视界 -- 基于 Java 的大数据分布式计算在地球物理勘探数据处理与地质结构建模中的应用(356)
  • 鹏鼎控股入职测评综合能力真题SHL测评题库2025年攻略
  • postgresql16.4 配置 数据库主从
  • PyTorch 实现 CIFAR-10 图像分类:从数据预处理到模型训练与评估
  • git bash命令不够完善,想整合msys2该怎么办?
  • 02-UE5蓝图初始的三个节点作用
  • 文娱投资的逆势突破:博派资本的文化旅游综合体战略
  • 阿里云宝塔Linux面板相关操作记录
  • 照片to谷歌地球/奥维地图新增功能:导出 GeoJSON 数据
  • 高级技术【Java】【反射】【注解】【动态代理】