idea run on target ssh rsync 同步异常/无法停止问题

问题描述:

idea从2021版本就开始引进run on target 功能,很是强大, 可惜windows下同步其他平台有问题, 至今官方仍未修复.

问题描述: windows 使用rsync同步到linux, 报classnotfound 异常,原因是windows的路径符同步到linux下没有转换

官方bug记录: Run Targets: can't run JUnit RC on ssh target with rsync on Windows : IDEA-270106 (jetbrains.com)

解决方案:

1. 进入rsync/bin路径下(我使用cwrsync),新建 rsync.bat文件

image.png

内容如下:

@ECHO OFF
::linux的sed命令路径,这里使用里git自带的
if exist "fileList.txt" D:\Java\env\Git\usr\bin\sed.exe -i 's:[\\]:\/:g' fileList.txt
::rsync.exe路径
D:\Java\env\cwrsync_6.2.8_x64_free\bin\rsync.exe %*

说明: 需要安装rsync和git(或cygwin),主要是使用sed命令,当然使用windows命令替换其实也可以

2. 配置idea的rsync,选择上面的rsync.bat, 替换原来的exe即可

image.png

3. 再运行同步到linux就正常了

无法Stop停止问题:

官网bug记录: https://youtrack.jetbrains.com/issue/IDEA-324137
原因:

  1. root用户有问题
  2. ssh 版本太低

解决方案也很简单:

  1. 新建一个非root用户
  2. 升级ssh(测试9.6p1正常)
  3. idea使用新建的非root 连接
  4. 可能需要关闭selinux: setenforce 0

自己使用的centos7一键升级ssh脚本: https://lrxc.lanzouo.com/b030oli2wh 密码:d3os

参考文档:
https://www.cnblogs.com/HByang/p/18002712
https://blog.csdn.net/u011439436/article/details/128020734

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。