VS Code Remote,在服务器上开发程序,开启全新开发模式
一直使用Idea开发java 程序,头疼的是太太太占用内存了,笔记本电脑经常卡爆,在服务器开发的话又太麻烦,VS Code Remote的带来,解决了这一烦恼。下面来实战一下。
VS Code Remote
2019 年 5 月 3 日,在 PyCon 2019 大会上,微软发布了 VS Code Remote,开启了远程开发的新时代
。
Visual Studio Code Remote 允许开发者将容器,远程计算机,或 Windows Subsystem for Linux (WSL) 作为完整的开发环境。你可以:
在部署相同的操作系统上进行开发,或者使用更大或更专业的硬件。
把开发环境作为沙箱,以避免影响本地计算机配置。
让新手轻松上手,让每个人都保持一致的开发环境。
使用原本在本地环境不可用的工具或运行时,或者管理它们的多个版本。
在 WSL 里开发 Linux 应用。
从多台不同的计算机访问现有的开发环境。
调试在其他位置(比如客户网站或云端)运行的应用程序。
所有以上的功能,并不需要在你的本地开发环境有源代码。通过 VS Code Remote,轻松连接上远程环境,在本地进行开发。
下面来实战。
安装vs code insiders
需要先安装最新的内部体验版,https://code.visualstudio.com/insiders/
然后安装Remote Development插件
https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack
为了简单起见,我们采用SSH模式。需要先在windows机器安装OpenSSH
windows 10 安装OpenSSH
使用 PowerShell 安装 OpenSSH
若要安装使用 PowerShell 的 OpenSSH,请首先以管理员身份启动 PowerShell。 若要确保 OpenSSH 功能以安装方式提供:
PowerShell复制
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
# This should return the following output:
Name : OpenSSH.Client~~~~0.0.1.0
State : NotPresent
Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent
然后,安装服务器和/或客户端功能:
PowerShell复制
# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
# Both of these should return the following output:
Path :
Online : True
RestartNeeded : False
SSH 认证
- 先ssh-keygen生车密钥
- 然后ssh-copy-id 到服务器
ssh-copy-id root@YOUR-SERVER-IP
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/c/Users/jqpeng/.ssh/id_ed25519.pub"
The authenticity of host 'YOUR-SERVER-IP' can't be established.
ECDSA key fingerprint is SHA256:HRwsmslg5ge+JYcOjW6zRtUxrFeWJ5V2AojlIvLaykc.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filterout any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@YOUR-SERVER-IP's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'root@YOUR-SERVER-IP'"
and check to make sure that only the key(s) you wanted were added.
使用VS code inside 开发程序
准备工作:
- 确保服务器已有JDK,mvn,没有的话先安装好
- 将代码签出到服务器一个目录
打开VS code,命令行:
选择connect to host
:
然后输入root@YOUR_SERVETR_IP
回车,VS 会自动在服务器准备相关环境。
搞定后,点击文件打开文件夹,VS Code会列出服务器的目录,选择项目所在地址打开即可。
接下来安装必要的语言插件,打开一个java文件,vs code会自动图惨案安装一些插件,把java相关的安装好:
调试程序
打开包含main的java文件,点击调试菜单,会自动生成一个启动文件,配置下即可:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "AimindWebApplication",
"request": "launch",
"mainClass": "com.xxx.xxx.XXXWebApplication"
}
]
}
然后启动。
惊喜的发现,在main函数上方,自动出现了RUN|DEBUG,见下图,点击debug即可启动调试
在调试控制台可以看到对应的输出。
内存占用
之前IDEA启动调试后,内存占用2G+,VS code呢?400M+!
把耗费计算资源、内存的都放到服务器上去执行了,本地只需要负责View,所以资源占用极小。
作者:Jadepeng
出处:jqpeng的技术记事本--http://www.cnblogs.com/xiaoqi
您的支持是对博主最大的鼓励,感谢您的认真阅读。
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
VS Code Remote,在服务器上开发程序,开启全新开发模式的更多相关文章
- 在cocos code ide的基础上构建自己的lua开发调试环境
对于一种语言,其所谓开发调试环境, 大体有以下两方面的内容: 1.开发, 即代码编写, 主要是代码提示.补齐, 更高级一点的如变量名颜色等. 2.调试, 主要是运行状态下断点.查看变量.堆栈等. 现在 ...
- 服务器上运行程序Out of memory 解决办法
****** 服务器上跑过程序经常能遇到out of memory 这个问题,下面是我经常在实验室碰到的解决方法. 1.使用命令nvidia-smi,看到GPU显存被占满: 2.尝试使用 ps aux ...
- 使用pycharm调试远程服务器上的程序
一.PyCharm实现远程调试代码 1. 和远程服务器建立连接,tools àDeploymentàConfiguration 2. 点击“+”号,按照远程服务器信息配置信息 点击“Advanced ...
- Shell脚本实现超简洁的在Linux服务器上安装nginx、resin、java、tomcat、redis等程序
说明: 用平常的方式在Linux服务器上安装程序,需要下载安装包.进入安装包位置.给安装包文件赋予可执行权限.执行安装.设置环境变量--等等一系列复杂的操作.并且如果有关联也需要一个一个的挨着安装.耗 ...
- 部署iis服务器与c#程序遇到的问题小结
记得上次部署IIS服务器比较顺利,半天搞定的?有点忘了. 但,服务器版本各有不同,这次装的是server2008 R2 Ennterprice版.虽然忘了上次装的是哪个版本,但进去后发现有些东西明显不 ...
- RSA Android加密的数据服务器上无法解密?
一.android加密的数据服务器上无法解密? "算法/模式/填充" android的rsa加密方式是--------RSA/ECB/NoPadding或者RSA/None/NoP ...
- 【Qt开发】【VS开发】【Linux开发】OpenCV、Qt-MinGw、Qt-msvc、VS2010、VS2015、Ubuntu Linux、ARM Linux中几个特别容易混淆的内容
[Qt开发][VS开发][Linux开发]OpenCV.Qt-MinGw.Qt-msvc.VS2010.VS2015.Ubuntu Linux.ARM Linux中几个特别容易混淆的内容 标签:[Qt ...
- 搭配 VS Code Remote 远程开发扩展在 WSL 下开发
❗ 注意:远程开发扩展需要在 Visual Studio Code Insiders 上使用. Visual Studio Code Remote - WSL 扩展允许你直接借助 VS Code 令 ...
- vscode实现远程linux服务器上Python开发
最近需要训练一个生成对抗网络模型,然后开发接口,不得不在一台有显卡的远程linux服务器上进行,所以,趁着这个机会研究了下怎么使用vscode来进行远程开发. 1 配置免密登录¶ (1)在 ...
随机推荐
- VS2019提示scanf不安全问题
VS2019提示scanf不安全问题 我们现在学的就是使用scanf()语句进行输入,但是vs2019中却报错显示不安全 首先我先来说一下scanf和scanf-s的区别 scanf()函数是标准C中 ...
- 错误 找不到Xcode No such file or directory
- Swoole 是 PHP 中的 Node.js?
一想到那些可以使用 Node 的同事,一些 PHP 开发者的脸都嫉妒绿了.异步 Node 系统可以在不同协议间共享代码库,并在代码之外提供服务.这真的想让一个人转 Node 开发.实际上 PHP 中也 ...
- luogu P1731 [NOI1999]生日蛋糕 |暴力枚举
题目背景 7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层 生日蛋糕,每层都是一个圆柱体. 设从下往上数第i(1<=i<=M)层蛋糕是半径为Ri, 高度为Hi的圆柱 ...
- bundle 的生成和使用
一.bundle 的生成 1.打开XCode,创建iOS版用的bundle资源包,有两种方式:第一种直接将工作,open in finder.在目录中直接新建文件夹,文件夹以bundle格式.文件夹 ...
- IOS开发中制作属于自己的静态库.a、资源库.bundle、.framework
一.什么是库 库实际上是一种代码共享的方式,主要用于代码重用和源码隐藏,通常分为动态库和静态库. 静态库:链接时完整的拷贝至可执行文件中,被多次使用就有多份冗余拷贝. 动态库:链接时不复 ...
- Koa - 使用koa-multer上传文件(上传限制、错误处理)
前言 上传文件在开发中是很常见的操作,今天我选择使用koa-multer中间件来实现这一功能,除了上传文件外,我还会对文件上传进行限制,以及发生上传错误时的处理. 由于原来的 koa-multer 已 ...
- windows程序设计00_HelloWorld
#include <windows.h> int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR sz ...
- 基于python的种子搜索网站(三)项目部署
项目部署过程 系统要求:ubuntu 16.04(或以上) 环境搭建和配置,必须严格按照以下步骤来安装部署!如有问题可以咨询(weixin:java2048) 安装部分 安装nginx sudo ap ...
- Python3 并发编程4
目录 Event事件 线程池与进程池 基本概念 使用方法 和信号量的区别 协程(coroutine) 基本概念 实现方式 多线程爬取梨视频 Event事件 用来控制线程的执行 e.isSet()查看对 ...