一种利用jetbrain家社区版远程调试所有语言的方法

6 篇文章 0 订阅

一种利用jetbrain家社区版远程调试所有语言的方法

统一解决各种语言远程调试

jet家的什么python,java,clion的c/c++都带remote debug,但是第一要缴费版本,第二rust这种语言,缴费也没有。

一种方法是使用gdbserver,这个具体可以google

方法原理

使用python脚本,在远程环境调用cmd,把结果打印到目前的ide,调用的时候运行python脚本就可以,如果配合虚拟机共享文件夹使用,那么就不需要上传下载文件。可能有人会问,为什么下载文件,这个主要是为了ide代码智能补全。

以运行rust代码为例

pip install remote_run_everything

remote_run_everythin github 地址

from remote_run_everything import Conf, Local, Remote
def test():
    c = Conf(
        host="192.168.177.130",
        user="root",
        pwd="a",
        remote_root="/mnt/myrust/ssl",
        local_root="D://myrust/ssl",
    )
    r = Remote(c)
    l = Local(c)
    
    # step1:代码文件同步:这个命令会把local_root下的子文件夹递归复制到remote_root对应的子文件夹,虚拟机共享文件夹不需要本步骤
    l.upload(c.local_root+"/src")
    
    # step2: 命令行:这个命令会在远程环境remot_root文件夹中执行cargo run,并把输出结果打印在屏幕。多个命令以列表形式传递
    # r.cmd(['cargo run'])
    
    # step3:代码智能补全文件下载: 这个命令会把remote_root的子文件夹复制到local_root对应子文件夹,虚拟机共享文件夹不需要本步骤,这一步的意义在于ide智能补全(编译代码在虚拟机,本地没有)。实际中,执行此步骤需要根据语言变更子文件夹,以rust为例,复制target即可
    
    l.download(c.remote_root+"/target")


test()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值