如何在WSL下使用VS Code

53次阅读

共计 4062 个字符,预计需要花费 11 分钟才能阅读完成。

自微软开始宣布拥抱开源以来,我认为微软发布的最棒的两大功能是:Visual Studio Code(VS Code)和 Windows 子系统 Linux(WSL),有了这两者的结合,它为软件开发人员开辟了一条新的编写代码的途径。
WSL 使开发人员能够在 Windows 10 上运行 Linux 环境,而无需付出更多使用虚拟机时的开销。使用 WSL,我们可以从 Windows 应用商店上安装大多数 Linux 正式版,我们甚至还能在其 GUI 上运行 Bash shell 脚本和 Linux 应用程序。
本文提供了详细的 WSL 配置分步说明,便于我们能够通过 WSL 在 Linux 上运行 VS Code。虽然本文的标题是《在 WSL 下使用 VS Code》,但也同样适用于其他 GUI 应用程序。
本文中使用的软件包括:

Windows 10 1809
Ubuntu 18.04
Visual Studio Code 1.30.2
MebaXTerm 11.1

本文目录:

启用 WSL
安装 Linux
下载并安装 MobaXterm
启动 MobaXterm 并打开 X Server
在已安装的 Linux 上安装 X Client
启动 VS Code

除了 Windows 10 和 VS Code 之外,我们还需要 X Server 和 X Client 来使 VS Code 与 WSL 协同工作。
在 Linux 的世界中,X Window System 扮演着为构建 GUI 环境必要的基本框架角色。X Window System 使用客户端 – 服务器模型,已实现与远程计算机以图形界面连接。因此,要使用我们的本地计算机(例如笔记本电脑)连接到远程 Linux 计算机,我们需要:

在远程 Linux 机器上运行 X Client 应用程序
在本地计算机上运行 X Server 应用程序

远程 X 客户端与本地 X 服务器建立连接并提供该应用程序的图形界面。所以使用此技术,就可以使用 WSL 运行 VS Code。
X Server 为我们提供了我们要运行的图形环境,由于 WSL 的 Bash 不支持 X Server,因此通过选型在这里我选择了配置更为简单的 MobaXterm。
打开 WSL 功能
在我们安装 Linux 发行版之前,我们需要启用 WSL。为此,首先在搜索栏上输入“打开或关闭 Windows 功能”。

然后在打开的窗口勾选“WSL”

单击“确定”按钮后,我们可能需要重启机器。
现在,我们在 Windows 10 上启用了 WSL。
(有关 WSL 的更多详细信息,请访问 https://docs.microsoft.com/en…)
安装 Linux(Ubuntu)
如果启用了 WSL 功能,那么我们就可以将 Linux 安装到 Windows 10 上了。
在 Windows 应用商店搜索 Ubuntu。

安装完成后启动

启动 Ubuntu 后,请按照说明创建用户帐户。

Ubuntu 全部配置完成后,我们继续安装 MobaXterm
安装并设置 MobaXterm
首选我们从官网下载 MobaXterm,他们官网提供了绿色版和安装版两种版本。选哪个看个人喜好,实际使用上区别不大,我这里使用的是绿色版。解压完成后启动程序,点击启动 X Server(如下图)
而后,X Server 就启动了。
配置 X Client
如开头所述,X Client 是我们想要远程访问的应用程序。在本文里,这个应用程序是 VS Code。为此,请按照以下步骤操作:

启动命令提示符
在命令提示符下,键入 bash 以进入 Ubuntu bash。

输入命令 $ export DISPLAY=localhost:0.0. 我们也可以在 ~/.bashrc 添加这个命令, 这样我们每次登录时就都不需要再重复这样的工作了 <g class=”gr_ gr_9 gr-alert gr_tiny gr_gramm gr_inline_cards gr_run_anim Grammar multiReplace” id=”9″ data-gr-id=”9″>in.

export DISPLAY=localhost:0.0 告诉 X Client 应用程序的具体 IP 信息,因为我们在本机执行该命令,所以使用的是 localhost,如果你使用的是远程计算机,请改掉 localhost 部分
安装 VS Code
现在,我们可以下载 VS Code 并安装到 Ubuntu 上。在这我们使用 Firefox 下 VS Code,这能再之后减少很多麻烦。
命令如下:
$ sudo apt update
$ sudo apt install firefox
启动 Firefox 以下载 VS Code
下载的 VS Code Debian 软件包应该位于 ~/Download. 目录内
$ cd ~/Download
$ sudo dpkg -i code_1.30.2-1546901646_amd64.deb
注:如果因为一些依赖问题而导致安装失败,请先安装依赖库,如下:

$ sudo dpkg -i code_1.30.2-1546901646_amd64.deb

Selecting previously unselected package code.

(Reading database … 42604 files and directories currently installed.)

Preparing to unpack code_1.30.2-1546901646_amd64.deb …

Unpacking code (1.30.2-1546901646) …

dpkg: dependency problems prevent configuration of code:

code depends on libnotify4; however:

Package libnotify4 is not installed.

code depends on libnss3 (>= 2:3.26); however:

Package libnss3 is not installed.

code depends on libxkbfile1; however:

Package libxkbfile1 is not installed.

code depends on libgconf-2-4; however:

Package libgconf-2-4 is not installed.

code depends on libsecret-1-0; however:

Package libsecret-1-0 is not installed.

code depends on libxss1; however:

Package libxss1 is not installed.

dpkg: error processing package code (–install):

dependency problems – leaving unconfigured

Processing triggers for mime-support (3.60ubuntu1) …

Errors were encountered while processing:

code

安装依赖库
sudo apt install libnotify4 libnss3 libxkbfile1 libgconf-2-4 libsecret-1-0 libgtk-3-0 libxss1

如果出现如下错误,请尝试 sudo apt -fix-broken install 命令重新安装

Reading package lists… Done

Building dependency tree

Reading state information… Done

libgtk-3-0 is already the newest version (3.22.30-1ubuntu1).

libgtk-3-0 set to manually installed.

You might want to run ‘apt –fix-broken install’ to correct these.

The following packages have unmet dependencies:

libgconf-2-4 : Depends: gconf2-common (= 3.2.6-4ubuntu1) but it is not going to be installed

Recommends: gconf-service but it is not going to be installed

libnss3 : Depends: libnspr4 (>= 2:4.12) but it is not going to be installed

libsecret-1-0 : Depends: libsecret-common but it is not going to be installed

E: Unmet dependencies. Try ‘apt –fix-broken install’ with no packages (or specify a solution).

安装完成后,启动 VS Code。
$ code

注意:一旦我们启动了 VS Code,我们可能会无法移动或调整 VS Code 的窗口。这是因为自 VS Code 1.30 以来默认启用了 Linux 上的自定义磁贴和菜单栏。为了能够避免这一问题,我们需要将设置更改为 native。

首先,打开 VS Code 设置。[文件 – > 首选项 – > 设置]
其次,在搜索栏上键入 title bar,然后选择 native。
重启 VS Code,现在我们应该已经可以移动和调整 VS Code 窗口和大小了。
结论
使用 WSL 和 X Server,我们可以在 Windows 10 上安装 Linux 并使用图形界面运行 Linux 上的应用程序。但是,这时候可能有人会问,我们为什么要这样做?为什么不直接在 Windows 上使用 VirtualBox 或 VMware 等虚拟机或者使用其他 Linux 机器?当然,大多数情况下这些方式没有问题,但在某些个别情况下,这样的方式并不适用。例如:

没有强大的工作站,运行虚拟机会导致机器很慢。
没有预算购买另一台机器来运行 Linux。
由于网络的延迟,在云上运行带有图形界面的应用程序可能会很慢。

WSL 提供了一种简单而廉价的解决方案,我们可以在我们更熟悉的 Windows 10 环境中运行 Linux 和 Linux 应用程序。

本文是由葡萄城技术开发团队发布,转载请注明出处:葡萄城官网

了解葡萄城开发工具

了解葡萄城开发者解决方案

正文完
 0