本文转载自微信公众号「编码小二」,作家小二 。转载本文请磋商编码小二公众号。
1 绪论最近在搭建一套 VSCode 的远端开垦环境,主要念念科罚 C/C++ 代码不成 100% 跳转的问题。
闲言少叙,装配经由送上。
2 操作方法2.1 装配 SSH
由于咱们是使用 SSH 鸠合费力处事器,因此 Windows 需要复旧 SSH 。
不错通过装配 Git 来赢得 SSH 功能,怎么考据?使用 Win + R ,输入 cmd 翻开截止窗口,凯旋输入 ssh ,如下教唆,则代表 SSH 还是装配到手;

2.2 添加插件
使用 VSCode 最便捷的小数,即是有许多插件可供选拔。
本次咱们需要使用 Remote - SSH 插件,长这个面貌,不要搞错了

装配完插件后,在侧边栏不错看到 “费力资源料理器” 图标。

2.3 确立SSH密钥
方向:将本机添加到费力处事器鸠合白名单,让处事器知说念是已认证的电脑在鸠合。经由访佛于 GitHub 网站添加土产货电脑的 SSH 公钥。
1、使用如下号令,生成 SSH 公钥文献。如果还是生成,则可凯旋使用,跳到方法二。
# 方法一 ssh-keygen # 方法二,参考使用Git生成密钥 ssh-keygen -t rsa -C "youremail@example.com"
2、一般生成的密钥文献,旅途为:C:\Users\user\.ssh ,找到公钥文献 id_rsa.pub ,复制到费力处事器 根目次 的 .ssh 文献夹中。
(1)根目次,不一定非如果 /.ssh 旅途,不错是我方的用户目次,访佛这么:/zhaochen/.ssh。
(2).ssh 文献夹莫得何如办?新建一个文献夹,定名为 .ssh 即可。同期要证实费力处事器是否复旧 SSH ,如果此时恰是通过 SSH 时势鸠合的,那细目是复旧了。
3、生成 authorized_keys 文献。这么后续在使用 Remote 插件时,不需要密码,就不错凯旋登录到处事器。
(1)鸠合到费力处事器
方法一:通过 Windows 的 cmd 号令框,使用如下号令 + 密码,鸠合到费力处事器# 规范号令,输入后会教唆输入密码 ssh username@ip -p port # 示例,注:SSH默许为22端口 ssh zhaochen@192.168.1.1 -p 22方法二:还是使用 SSH 时势鸠合到处事器
(2)投入 .ssh 目次,使用如下号令,生成 authorized_keys 文献。
cat id_rsa.pub > authorized_keys
4、在 cmd 窗口,再次尝试如下,不错看到无需密码,凯旋连上处事器

如果已使用 SSH 时势鸠合到费力处事器,小二再共享一种更简便的方法:
1、在 .ssh 文献夹下,新建 authorized_keys 文献;
2、将 id_rsa.pub 文献中的现实沿途复制到 authorized_keys 文献即可;
2.4 添加确立文献
方向:确立 VSCode 鸠合费力处事器的一些基本信息。
1、点击左侧的 “费力资源料理器” 图标,柬埔寨修车群点击右上角的小齿轮(确立)

2、在弹出来的窗口中,选拔第一个 config 文献翻开,参考下图,填写对应信息

(1)参考上述确立,释义如下
Host <费力主机称号> HostName <费力主机IP> User <用户名> Port <ssh端口,默许22> IdentityFile <本机SSH私钥旅途> ForwardAgent yes <VSCode 我方添加的,不必管>Host :鸠合的主机称号,可自界说; Hostname :费力主机的 IP 地址; User :用于登录费力主机的用户名; Port :用于登录费力主机的端口,SSH 默许为 22 ; IdentityFile :土产货的私钥文献 id_rsa 旅途;
(2)如果需要鸠合多个费力处事器,可参考如上现实,确立多个即可;
Host <费力主机称号1> HostName <费力主机1 IP> User <用户名1> Port <ssh端口,默许22> IdentityFile <本机SSH私钥旅途> ForwardAgent yes <VSCode 我方添加的,不必管> Host <费力主机称号2> HostName <费力主机2 IP> User <用户名2> Port <ssh端口,默许22> IdentityFile <本机SSH私钥旅途> ForwardAgent yes <VSCode 我方添加的,不必管>
2.5 鸠合测试
1、投入 “费力资源料理器” 选项,右键点击主机名;
2、选拔一种时势,鸠合到费力处事器,进行测试;

3、如果鸠合到手,左下角则会清晰面前已鸠合的主机名。
参考贵寓
1、VS Code Remote SSH确立 - 知乎 (zhihu.com)(https://zhuanlan.zhihu.com/p/68577071)
3 问题汇总3.1 插件装配
当咱们搭建好 Remote SSH 环境后,VSCode 复旧在 费力处事器 装配插件。
此时就不错凭证我方的开垦风气,将插件装配到不同地点了。

3.2 鸠合报错
如果极端教唆如下:
could not establish connection to “XXX“.Connecting was canceled. VScode remote '_workbench.downloadResource' failed vscode could not establish _workbench.downloadResource
可凯旋参考这篇著述:VSCode Remote 报错,无法鸠合??
3.3 膨胀ssh鸠合失败
SSH 鸠合费力处事器失败,有如下极端教唆:
could not establish connection to XXX, the path argument must be of type string, received type undefined。
问题原因:找不到 SSH 可实施方法。
科罚方法如下:
1、按下 F1 ,输入 Remote-SSH: Settings ,找到 remote.SSH.path ,修改此旅途为土产货 Git 装配方法中的 ssh.exe 文献即可;
2、参考下图:

参考贵寓
1、Visual studio code 膨胀 ssh 鸠合失败:The "path" argument must be of type string. Received type undefined_的米-漠石's Blog-CSDN博客(https://blog.csdn.net/mostone/article/details/103023476)
3.4 C/C++环境极端
1、极端截图如下:

2、极端日记如下:
正在更新 C/C++ 依赖项...正鄙人载方法包“C/C++ language components (Linux / x86_64)” 失败。正在重试... 失败。正在重试... 失败。正在重试...正在恭候 8 秒... 失败。正在重试...正在恭候 16 秒... 未能下载 https://go.microsoft.com/fwlink/?linkid=2164295在阶段 downloadPackages 失败Error: connect ECONNREFUSED 23.41.74.108:443at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16)如果在脱机环境中职责或反复看到此极端,请尝试从 https://github.com/microsoft/vscode-cpptools/releases 下载预包含了扫数依赖项的膨胀版块,然后使用 VS Code 中的“从 VSIX 装配”号令来装配它。
3、问题原因:小二臆想,是由于费力处事器脱机使用插件,导致 C/C++ 的膨胀装配失败;
4、科罚方法,极端日记中还是相比详备。简要形容如下:
(1)手动下载 cpptools-linux.vsix 文献,放到费力处事器中;网址:Releases · microsoft/vscode-cpptools (github.com)
(2)投入插件选项卡,点击 ··· ,选拔 从 VSIX 装配... ,选中刚刚下载的文献;
(3)终末恭候装配实现,点击重载窗口,就大事完了了。

参考贵寓
1、vscode 科罚正鄙人载方法包“C/C++ language components (Linux / x86_64)” 失败引起的标志找不到问题_chenwr2018的博客-CSDN博客(https://blog.csdn.net/chenwr2018/article/details/115774007)
2、Releases · microsoft/vscode-cpptools (github.com)(https://github.com/microsoft/vscode-cpptools/releases)
4 归来1、详备归来 VSCode 搭建费力开垦环境的经由;
2、对插件的装配、Remote SSH 联系问题作念了补充完善柬埔寨水电群,相对具有参考好奇羡慕好奇羡慕;