【问题标题】:Develop locally with IntelliJ IDE but test from remote machine使用 IntelliJ IDE 进行本地开发,但从远程机器进行测试
【发布时间】:2020-06-04 17:17:46
【问题描述】:

我正在开发一个存储库,我必须从数百万个文件中提取一些特征。

对我来说,目前的工作流程是:

  1. 在 IntelliJ 中编写代码
  2. 运行单元测试
  3. 小数据试运行
  4. ssh 到远程机器
  5. sftp 当前代码到远程机器
  6. 在包含数百万个文件的服务器上运行
  7. 查看日志异常并找出代码因边缘情况而失败的地方
  8. 解决这些问题并从第 1 步开始重复

我的问题有三个:

  • 有没有一种简单的方法可以自动与远程机器同步代码(我知道我提交到 git 然后拉取机器中的更改。但是除了设置 rsync 等还有其他方法吗?)
  • 我可以从 IDE 直接在远程计算机上运行代码并以这种方式进行调试吗?

【问题讨论】:

    标签: intellij-idea ssh remote-debugging


    【解决方案1】:

    1) 有很多方法可以同步您的代码。有时最好的方法是在 Python 或 sh 中创建一种部署脚本,如果您不想提交和推送要在服务器上测试的任何更改。您可以在此处使用sftpscp 以实现更多自动化(使用gzip 等)。 Git 和 rsync 是这里比较成熟的解决方案。但是使用 VCS,您的问题将更容易重现并且更容易找到。

    2) 您可以连接到远程进程以直接从 IntelliJ 对其进行调试。有一个官方教程:https://www.jetbrains.com/help/idea/tutorial-remote-debug.html(但这取决于您的安全设置,因为 Java 调试协议本身并不安全,您可能需要为此设置 SSH 隧道)

    3) 另一个更激进的选择:您可以在服务器上运行 IntelliJ IDEA 本身并直接调试。您可以使用 Projector - 一个开源项目,可让您在服务器上使用浏览器中的 UI 运行 IntelliJ(无需 X11 即可运行)。我建议您首先查看此 repo https://github.com/JetBrains/projector-docker 或按照此处的说明在服务器上配置 IntelliJ:https://github.com/JetBrains/projector-server

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-23
      • 1970-01-01
      • 1970-01-01
      • 2012-08-01
      • 1970-01-01
      • 2013-08-01
      相关资源
      最近更新 更多