使用 IDEA 自带的远程开发功能,可以直接将本地的编译、构建、调试、运行等工作全部都放在远程服务器上执行!

而本地仅运行客户端软件连接服务器,像之前一样编写代码、进行其他开发操作即可。

  • 适合本地电脑性能差(服务器性能强)、开发环境多人协作开发、需要统一开发环境的场景。

网络连通

要确保我们本地的 Windows 电脑能够连接到 Linux 虚拟机。

首先在设置中搜索网络,点击查看网络设置:
Linux_java_1.jpg

获取到虚拟机的 IPv4 地址:
Linux_java_2.jpg

在自己的 Windows 电脑上打开 CMD ping 这个 IP 地址,测试能否 ping 通。

如下图,表示网络正常连通:
Linux_java_3.jpg


开启 SSH 服务

在 Linux 虚拟机中,我们需要开启 SSH 服务,这样我们才能通过 SSH 协议连接到虚拟机。

很多远程开发工具都是通过 SSH 协议连接远程服务器的,所以我们要在 Linux 虚拟机上开启 SSH。

在 Linux 虚拟机上打开终端,输入下列命令安装 SSH 服务器:

1
sudo apt-get install openssh-server

安装完成后,我们可以通过下列命令查看 SSH 服务是否已经开启:

1
ps -e | grep ssh

如下图,表示 SSH 服务已经开启:
Linux_java_4.jpg

如果没有开启,我们可以通过下列命令开启 SSH 服务:

1
sudo service ssh start

安装 Java

因为我们要使用 Java 远程开发,所以我们需要在 Linux 虚拟机上安装 Java。

首先打开终端,更新软件源信息:

1
sudo apt update

然后执行下列命令来安装 Java 8(经典版本):

1
sudo apt install openjdk-8-jdk

安装完成后,我们可以通过下列命令查看 Java 版本:

1
java -version

看到如下图输出,表示 Java 安装成功:
Linux_java_5.jpg


安装 Maven

安装 Java 的项目依赖管理工具 Maven,便于接下来测试 Spring Boot 项目的远程开发。

打开终端,输入如下命令安装 Maven:

1
sudo apt install maven

安装完成后,我们可以通过下列命令查看 Maven 版本:

1
mvn -v

看到如下图输出,表示 Maven 安装成功:
Linux_java_6.jpg


远程开发

进入 IDEA 主页,找到 SSH 选项,点击新建项目:
Linux_java_7.jpg

配置 SSH 连接:
Linux_java_8.jpg

指定远程开发的代码路径:
Linux_java_9.jpg

首次使用时,需要等待下载 JetBrains Client 客户端,服务器上也会自动安装对应的远程开发后端,然后进入远程开发:
Linux_java_10.jpg

打开任务管理器,可以看到 JetBrains 的 client 非常 “轻量”:
Linux_java_11.jpg

然后直接以 Debug 模式启动项目:
Linux_java_12.jpg

还可以配置请求转发,像访问本地服务一样访问远程端口:
Linux_java_13.jpg
Linux_java_14.jpg

接下来访问本机地址 http://127.0.0.1:8080/hello ,就能够访问到项目啦,而且直接支持 Debug!无须做任何多余的配置!