共计 2850 个字符,预计需要花费 8 分钟才能阅读完成。
欢送拜访我的 GitHub
这里分类和汇总了欣宸的全副原创 (含配套源码):https://github.com/zq2599/blog_demos
本篇概览
- IDEA 的近程开发性能,能够将本地的编译、构建、调试、运行等工作都放在近程服务器上执行,而本地仅运行客户端软件进行惯例的开发操作即可,官网给出的逻辑图如下,可见通过本地的 IDE 和服务器上的 IDE backend 将本地电脑和服务器买通,实现了近程开发的成果
- 理论体验中,感觉就像平时的 IDEA 本地开发,但其实沉重的工作都交给了服务器去做,这对性能较差的本地电脑来说,以前跑不动的利用,现在凭借弱小的服务器也能丝滑运行了
- 明天就来一起实战 IDEA 近程开发,让破旧的本地电脑也能流畅的编译运行 Java 利用
- 文章由以下几段组成:
- 环境信息一览
- 筹备服务器
- IDEA 近程连贯
- 从新设置工程的根目录
- 端口转发
- 其余要留神的中央
环境信息一览
- 以下是我这边本次实战的环境信息,可作为参考
- IDEA:2021.3.2 (Ultimate Edition)
- 本地电脑操作系统:macOS Montery(12.3)
- 服务器:Ubuntu 20.04 LTS(4 核 8G)
筹备服务器
- 一台 Linux 服务器是近程开发必须的,本人内网的、租用云服务厂商的都能够
- IDEA 会主动在服务器上安装所需的服务,咱们无需提前准备什么,惟一要求是能够通过 SSH 登录此服务器
- 欣宸的服务器是腾讯云轻应用服务器,在官网租用的,如下图,4 核 8G,一年两百多,感觉挺划算
- 接下来要在服务器上把开发用的代码筹备好,我这里是将本人 github 仓库下载到服务器上,代码寄存在这里:<font color=”blue”>/home/ubuntu/jetbrains-workspace</font>
ubuntu@VM-12-12-ubuntu:~/jetbrains-workspace$ git clone https://github.com/zq2599/blog_demos.git
Cloning into 'blog_demos'...
remote: Enumerating objects: 14559, done.
remote: Counting objects: 100% (1097/1097), done.
remote: Compressing objects: 100% (350/350), done.
remote: Total 14559 (delta 846), reused 818 (delta 703), pack-reused 13462
Receiving objects: 100% (14559/14559), 110.29 MiB | 3.05 MiB/s, done.
Resolving deltas: 100% (4714/4714), done.
IDEA 创立近程连贯
- 服务器端筹备结束后,能够开始本地电脑的近程连贯操作了
- 关上 IDEA,如下图,抉择 <font color=”blue”>New Connection</font>
- 输出 IP 地址,账号密码
- 按要求输出明码,近程连贯胜利后,指定工作目录(Project directory),我指定的是代码仓库所在目录,而后点击右下角的 <font color=”blue”>Download and Start IDE</font>
- 近程服务器开始下载后端利用,这是用于反对近程开发的服务
- 期待下载实现后,就会多出一个名为 <font color=”blue”>JetBrains Client</font> 的利用,并且曾经关上,如下图红框,这就是未来做近程开发的本地工具了
- JetBrains Client 界面如下,看起来像是 IDEA,能够看到方才在服务器下载的整个仓库的内容,和在本地关上没什么区别,Terminal 关上的也是服务器目录,批改代码时改变的也是服务器上的代码
- 还剩一个问题:如上图所示,此仓库中并不只有一个 java 我的项目,而是有几十个文件夹,每个文件夹下都是个独立的工程(有的是 gradle,有的是 maven),如果我当初只想批改其中的一个(例如上图红框中的 <font color=”red”>quarkus-tutorials</font>),并编译运行它,应该怎么操作?接下来就解决此问题(这是 IDEA 的操作,并非近程连贯的问题)
从新设置工程的根目录
- 接下来要解决的问题是:IDE 近程关上的文件夹里有多个工程,我只想关上其中的一个 <font color=”blue”>maven</font> 工程进行开发和调试
- 顶部菜单抉择 ”File” -> “Project structure…”
- 点击下图红框地位的 <font color=”blue”>X</font> 符号,会删除以后内容根目录(Content Root)
- 点击下图红框中的加号,从新增加内容根目录(Content Root)
- 抉择用于开发的文件夹即可
- 抉择结束后,终于见到相熟的目录构造
- 您可能会觉着这一段的操作是多此一举:只有在近程连贯的时候设置工作目录是 <font color=”blue”>quarkus-tutorials</font> 就行了,没必要这么麻烦,您说的没错,在近程连贯的时候的确能够间接指定目录,然而如果此刻应用的是 Jetbrains 的 space,那里无奈间接指定目录,只能间接关上
作为 maven 工程运行
- 对于服务器的 JDK,如果装了,请依照下图地位去抉择,如果没有装置,依照下图进行近程下载即可
- 此刻,IDE 并未辨认到这是个 maven 工程,须要关上 pom.xml,而后在右键菜单中选择 <font color=”blue”>Add as Maven Project</font>,如下图红框
-
期待我的项目加载和更新实现后(生成索引工夫较长,我这边半小时),终于见到了相熟的 maven 我的项目页面,可见和用 IDEA 时候并无区别
- 试试 maven 的单元测试,如下图,和应用 IDEA 并无区别,顺利执行
端口转发
- 开发 web 利用时,启动利用后,拜访近程 IP 地址和端口可能比拟麻烦(有的服务器波及到平安问题不轻易开始口),此时 JetBrains Client 提供的端口转发性能十分实用
- 端口转发配置形式如下图,这样我拜访本机的 8080 端口时,申请就会转到服务器的 8080 端口
-
启动利用试试,我的利用是个一般 web 利用,启动后监听 8080 端口,然而我并没有给服务器开明 8080 端口到外网,如下图,从本地能够拜访胜利
其余要留神的中央
- 退出的时候,会提醒是否敞开近程服务,请自行抉择,我抉择的是 <font color=”blue”>Close and Keep Running</font>
- 如果嫌每次输出明码麻烦,就在 idea 中保存起来
- 下次再关上时就会呈现之前的记录,点击即可进入
- Git 提交性能也能够失常应用:本地的提交其实是将服务器上的代码提交到 Github
- 最初别忘了去插件治理页面装置罕用插件
- 至此,IDEA 近程开发的理论体验曾经实现,心愿本文能给您一些参考,助您搭建一个稳固高性能的开发环境
欢送关注思否:程序员欣宸
学习路上,你不孤独,欣宸原创一路相伴 …
正文完