使用Intellij在远程服务器上部署/调试Java代码

我想在远程服务器上运行我的java代码以获得更快的速度(服务器非常强大)。 我想要的是将我的Intellij连接到该远程服务器并运行我的代码。 但我仍想在我的本地机器(即我的笔记本电脑)上使用IntelliJ。

我在IntelliJ中找到了一个配置部分,它在Default Setting->Build-executation-deployment-> Deployment ,我可以设置远程服务器的地址和用户名和密码。 但我不知道接下来该做什么。

有一个PhpStorm的分步部署指南 ,但对于IntelliJ IDEA,它几乎是一样的。

以下是通过SFTP将.jar文件从artifact子目录部署到远程服务器到/home/serge/artifact目录的示例配置:

连接

映射

我将配置工件以生成可执行jar 。 然后调整部署配置以将jar部署到远程服务器。 或者你可以使用Maven / Gradle来做同样的事情。

接下来,您可以配置远程SSH外部工具以在服务器上运行jar(通过java -jar jarname.jar

远程ssh工具

通过Tools |在远程服务器上运行 External Tools | hello

赛跑

要自动化流程,请启用包含在工件的项目构建中,在Tools |中启用Automatic uploadTools |中Deployment并启用外部更改 Deployment | Options

要调试代码,请使用远程调试配置 。 复制调试所需的JVM选项并调整远程SSH外部工具中的选项,以便应用程序以调试模式启动并可以接受连接(确保调整防火墙规则以允许指定端口上的连接)。

  • 远程调试配置
  • 调试外部工具配置
  • 工作certificate

所以你需要做两件事:

将代码部署到远程服务器。 有几种方法可以做到:

  • 通过IDEA与您的应用程序服务器集成。 进入Settings > Build, Execution, Deployments > Application Servers然后在其中添加应用程序服务器。 您可以稍后将其用作部署目标。 见文档 。
  • 例如,通过构建工具进行集成,maven具有与许多应用服务器集成的插件。 当您的构建过程很复杂时,这很有效。
  • 手动 – 简单复制构建工件到目标应用服务器计算机并手动部署。

以调试模式连接到服务器。 为此,您需要在IDEA中创建单独的运行/调试配置。 如果您有Enterprise Edition,则可以选择服务器的配置模板(eq Tomcat Server ),然后从“ 应用程序服务器”列表中选择服务器。 在Community Edition中,您必须使用默认的远程配置。

设置完成后,您的工作流程应如下所示:

  1. 更改代码;
  2. 将其重新部署到服务器中(必要时重新启动);
  3. 运行调试配置;
  4. 在服务器上访问您的应用程序(例如通过浏览器)以触发执行所需的代码;
  5. 调试