一、前言

进行远程开发,是指的在windows系统直接操作Linux服务器,和之前在Windows上的开发方法完全保持一致,两个字:丝滑。

下边我会以Java开发为例,带你们把握两种远程开发的方法,分为远程布署和纯远程开发。

二、准备工作

在学习远程开发前,我们要做一些打算工作,

1、保证网路电信

要保证Windows笔记本它要才能访问到我们的虚拟机。打开虚拟机终端(Ctrl+Alt+T),输入ifconfig来查看虚拟机的ip地址。

image-20230816143153824

假如提示未发觉,输入下边的提示进行安装sudoaptinstallnet-tools进行安装

image-20230816143317482

之后再度输入ifconfig来查看ip地址:192.168.44.128

image-20230816143420168

另外一种方法,按windows键,输入IP,选择网路配置,点进去

image-20230816143928408

点击有线联接旁边的设置按键

image-20230816143949666

image-20230816144100999

回到Windows系统,Win+R,输入cmd,打开行,之后我们来ping虚拟机的地址

image-20230816144255673

2、Linux系统须要SSH支持

不仅保证网路能ping通外,我们等会的远程开发它还依赖了SSH这样一个合同和Linux构建联接。所以我们要在俺们的Linux虚拟机内去提供这个SSH的支持

sudo apt-get install openssh-server

回车执行,输入y确认安装

linux服务开发_linux服务程序开发_linux服务器开发

image-20230816144756562

image-20230816144811801

安装完以后,输入ps-ef|grepssh来查看SSH服务是否早已开启。见到如右图所示,说明服务早已开启

3、安装Java环境

首先我们执行sudoaptupdate来更新以下我们本地软件包的安装信息,之后我们执行sudoaptinstallopenjdk-8-jdk

image-20230816145849068

输入Java-version来查看Java的版本

4、安装maven环境

输入sudoaptinstallmaven来安装我们的maven。

安装完成后,输入mvn-v查看版本号,见到如下输出,说明早已安装成功了

image-20230816150334254

至此,我们远程开发所需的Linux环境以及打算完毕了。接出来就演示两种不同的远程开发方式

三、远程布署1、介绍

远程布署形式的远程开发指的是:在本地自己的笔记本上写代码,之后呢通过文件同步的方法,把代码同步到我们的远程Linux服务器,也就是我们的虚拟机上;最后假如要启动项目时,再用本地的笔记本去联接远程的Linux服务器,通过远程执行命令的形式来编译代码、运行代码。这些方法更多的像是增强了我们从本地同步代码到服务器上的一个效率,它不算是真正意义上的远程开发。

image-20230816152021653

让我们把远程开发分为6个阶段:编撰代码、文件同步、代码运行、编译建立、部署、调试。

2、远程布署形式

image-20230816154902031

本地启动,并访问::8080/hello

image-20230816155152834

如今我们要实现的就是能够在windows上访问Linux虚拟机上的插口

点击idea开发工具最上方的Tools—》Deployment—》Configuration来创建一个远程布署的配置

image-20230816160614534

点击添加linux服务器开发,选择SFTP合同

image-20230816160749841

image-20230816160840481

image-20230816161129797

image-20230816161153529

image-20230816161211374

之后点击apply,点击OK

image-20230816161345396

之后再右下角,点开RemoteHost就可以看见远程服务器上的文件列表了

下边开始配置文件同步,实现代码手动同步到Linux服务器上:

点击Tools—》Deployment—》Configuration,步入配置,点击Mappings

image-20230816162648146

如今我们就完成了路径的一个映射

步入linux系统中,步入到/home/linjh/yuan-code,查看文件夹下的文件列表,目前是没有任何文件

linux服务程序开发_linux服务器开发_linux服务开发

image-20230816162835911

回到windows,在项目的根目录处点击右键linux常用命令,找到Deployment—》Syncwithdeployedtoubuntu……

image-20230816163143266

系统都会为我们列出现今没有同步到服务器上的文件

image-20230816163502691

之后关掉窗口,回到Linux服务器上,再度查看/home/linjh/yuan-code下的文件列表,会发觉多了好多的文件

输入cataaa.txt查看一下文件的内容,跟windows系统写的一模一样,说明文件的内容也同步了

而且我们在windows笔记本上删掉这个文件时,编译器会提示你是否要同步删掉远程文件,假如每次都去寻问一下是很麻烦的。所以可以在:Tools—》Deployment—》Options中设置

image-20230816164633324

勾选:删掉本地文件时是否也要同步删掉远程

image-20230816164912555

Options中主要用于修改文件同步的一些配置。到此文件同步设置即使完成了

步入终端Terminal,选择左侧下拉箭头

image-20230816175643807

步入服务器代码根目录

linjh@ubuntu:~$ cd yuan-code/
linjh@ubuntu:~/yuan-code$ pwd
/home/linjh/yuan-code

执行mvnspring-boot:run通过run命令在远程服务器上调试运行了,此命令会下载maven依赖,并运行Java项目

因为刚刚只是通过run在远程服务器上调试运行,那我们如何即将通过windows笔记本来操作远程服务器完成项目的布署上线呢?

我们首先要建立项目,还是在终端目录中输入mvncleanpackage,稍等片刻,当我们能否看见buildsuccess这样的输出,就表示现今代码已然打包建立完毕了,我们才能在相应的目录下看见生成的jar包

执行java-jar/home/linjh/yuan-code/target/yuan-code-0.0.1-SNAPSHOT.jar运行项目jar包,真正项目中旁边还可以指定运行的环境--spring。profiles.active=prod

image-20230817085639867

截至到如今我们完成了程序的远程同步、运行、编译建立和布署

​在日常工作中,怎样调试Linux虚拟机上的远程程序,例如打个断点,查看一下变量的信息等等。虽然远程调试十分简单,而且比较关键的一点,这儿一定要指出一下:你们最后不要在线上的程序去调试去打断点,可能会影响这个线上用户的运行,这是一个很危险的操作。

​怎么开启远程调试呢?虽然十分简单,首先点击右上角编辑配置

image-20230817103102039

之后这儿我们新增一套运行的配置。添加–》输入remote……—》RemoteJVMDebug

image-20230817103305677

输入debug调试服务名称,输入远程服务器ip,选择jdk版本,idea会手动为我们生成jvm参数,点击apply,之后OK

复制里面生成的jvm参数,之后在idea终端启动jar包。java-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005-jar/home/linjh/yuan-code/target/yuan-code-0.0.1-SNAPSHOT.jar

image-20230817104246548

之后点击右上角的debug按键linux操作系统怎么样,启动debug模式,打断点,之后访问插口测试是否步入debug模式

image-20230817104601975

image-20230817104620208

image-20230817104633376

至此远程debug调试早已完成。如今我们就可以把我们的Linux虚拟机当作我们自己的笔记本一样去进行开发了。以上就是第一种远程开发的讲解。

3、纯远程开发(推荐)

image-20230817110815396

区别于刚刚演示的远程布署形式,我们如今使用的纯远程开发的方法,它的实现原理是这样的:

我们直接把所有的源代码编译运行,甚至是代码编辑器本身全部都放在了服务器上,以服务器为主。而我们的本地笔记本呢,仅仅是运行了一个能操作远程服务器的界面,就有点类似于我们的云游戏一样,自己的笔记本不存代码,不负责任何代码的运行,把脏活累活都交给俺们的服务器去干。这么这些远程开发方法比较适用于我们自己的笔记本性能不高,服务器的性能很强以及开发环境须要多人协作或则你们须要统一同一套开发环境的场景,有些大厂会有一些开发机,开发者联接到开发机进行统一的开发协作。此方法依赖于Idea工具

步入到idea的入口页面,点击RemoteDevelopment,我们点击下边的SSH,来新建一个远程项目;点击新建项目

image-20230817105501075

新建联接

image-20230817105603135

输入host、端标语、用户名、密码,点击测试联接

image-20230817105759528

显示联接成功,点击Ok进行添加。

image-20230817105902574

下拉选择添加好的远程服务器

image-20230817105944779

之后点击检测链接并继续。选择远程项目目录,之后点击下载IDE并联接

输入远程服务器的密码

下边开发工具就是在为我们在远程服务器上安装jetbrains顾客端,第一次比较慢。这个顾客端跟我们如今你们看见的这个早已安装好的Windows笔记本上的开发工具还是不太一样

image-20230817110454448

勾选,并点击继续,安装完成linux服务器开发,步入远程顾客端界面,我们可以直接点击项目运行文件

image-20230817151942916

想要学习Linux系统虚拟机环境搭建的可参考下篇文章:一篇文章,教你使用Vmware安装Linux系统

本文原创地址://q13zd.cn/yckfzwxtzczl.html编辑:刘遄,审核员:暂无