看起来 Toolbox App 支持远程开发了? - V2EX
asd999cxcx

看起来 Toolbox App 支持远程开发了?

  •  
  •   asd999cxcx Apr 16, 2025 2097 views
    This topic created in 391 days ago, the information mentioned may be changed or developed.
    目前正在尝试,这是官方博客地址 https://blog.jetbrains.com/toolbox-app/2025/04/toolbox-app-2-6-is-here-with-remote-development-support/
    看描述像是在远程机器启动一个 IDE 实例然后进行开发?不知道环境是怎么算。不过算是一个好消息吧,总算是向远程开发迈了正确的一步,开始追赶落后的内容。
    13 replies    2025-04-24 20:49:28 +08:00
    infreboot
        1
    infreboot  
       Apr 16, 2025
    Toolbox App 现在装 2.3 也会更新到 2.6.。 感觉强制更新了
    springz
        2
    springz  
       Apr 16, 2025
    被 vscode 打的找不到北了吧,vscode 那个远程真的是无缝体验。如果能达到 vscode 的水平,我应该会继续付费。
    springz
        3
    springz  
       Apr 16, 2025
    别试了,还是老一套,两个撕裂的环境,不同操作系统字体都不一样。
    springz
        4
    springz  
       Apr 16, 2025
    和老的 gateway 没有区别。
    asd999cxcx
        5
    asd999cxcx  
    OP
       Apr 16, 2025
    @springz 我原本打算远程到我的小主机上试试,不知道是不是我小主机上的 toolbox 没登录账户的原因,ssh 过去的时候一直提示 ssh 部署失败
    zfjdif
        6
    zfjdif  
       Apr 17, 2025
    感觉 toolbox 的连接比 gateway 稳定?不知道是不是错觉,使用了几天,感觉比 gateway 体验好。
    - ctrl + enter 可以执行 SQL 了
    - 我这边基本没有遇到卡顿和报错
    - 重启 IDE 不会无响应了,能够成功重启
    我这边主要是用的是 PyCharm 和 WebStorm
    asd999cxcx
        7
    asd999cxcx  
    OP
       Apr 17, 2025
    @zfjdif 为啥我一直提示 ssh 部署失败...你是咋操作的?
    zfjdif
        8
    zfjdif  
       Apr 18, 2025
    @asd999cxcx 就正常操作,我一直在用 gateway
    asd999cxcx
        9
    asd999cxcx  
    OP
       Apr 18, 2025
    @zfjdif 远程机器是咋配置的只装了个 toolbox 吗
    zfjdif
        10
    zfjdif  
       Apr 19, 2025
    @asd999cxcx 有报错吗,贴个日志
    asd999cxcx
        11
    asd999cxcx  
    OP
       Apr 21, 2025
    @zfjdif 这是最新的报错记录 Log:
    ```

    2.6.0.40632 93314 2025-04-21 22:35:00.708 INFO cher-worker-5 SshToolboxAgentDeployer Plugin ssh > [email protected] IpcInstanceFactory REMOTE-LOG: pid: 27912
    2.6.0.40632 93314 2025-04-21 22:35:00.709 INFO cher-worker-5 SshToolboxAgentDeployer Plugin ssh > [email protected] MainInstance$Companion REMOTE-LOG: C:\Users\scw\AppData\Local\JetBrains\Toolbox\cache\ipc: binding
    2.6.0.40632 93314 2025-04-21 22:35:00.724 INFO cher-worker-5 SshToolboxAgentDeployer Plugin ssh > [email protected] MainInstance$Companion REMOTE-LOG: C:\Users\scw\AppData\Local\JetBrains\Toolbox\cache\ipc: already in use (Address already in use: bind)
    2.6.0.40632 93314 2025-04-21 22:35:00.724 INFO cher-worker-5 SshToolboxAgentDeployer Plugin ssh > [email protected] IpcInstanceFactory REMOTE-LOG: checking if the main instance is alive
    2.6.0.40632 93314 2025-04-21 22:35:00.834 ERROR cher-worker-5 SshToolboxAgentDeployer Plugin ssh > [email protected] MainKt REMOTE-LOG: : java.lang.IllegalStateException: java.lang.IllegalStateException: main instance is alive (pid=5088), cannot bind twice
    at com.jetbrains.toolbox.ipc.IpcInstanceFactory.main(IpcInstanceFactory.kt:56)
    at com.jetbrains.toolbox.ipc.IpcInstanceFactory$main$1.invokeSuspend(IpcInstanceFactory.kt)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTaskKt.resume(DispatchedTask.kt:233)
    at kotlinx.coroutines.DispatchedTaskKt.dispatch(DispatchedTask.kt:152)
    at kotlinx.coroutines.CancellableContinuationImpl.dispatchResume(CancellableContinuationImpl.kt:470)
    at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl$kotlinx_coroutines_core(CancellableContinuationImpl.kt:504)
    at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl$kotlinx_coroutines_core$default(CancellableContinuationImpl.kt:493)
    at kotlinx.coroutines.CancellableContinuationImpl.resumeUndispatched(CancellableContinuationImpl.kt:596)
    at kotlinx.coroutines.EventLoopImplBase$DelayedResumeTask.run(EventLoop.common.kt:497)
    at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:263)
    at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:95)
    at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:69)
    at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
    at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:47)
    at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
    at com.jetbrains.toolbox.MainKt.mainByApp(main.kt:120)
    at com.jetbrains.toolbox.MainKt.main(main.kt:140)
    at com.jetbrains.toolbox.common.logging.StructuredLogging.tryLogFromStructuredLoggingOutput(StructuredLogging.kt:46)
    at com.jetbrains.toolbox.gateway.deploy.ssh.SshToolboxAgentDeployer$startAgent$deployEverything$3$1.invokeSuspend(SshToolboxAgentDeployer.kt:216)
    at com.jetbrains.toolbox.gateway.deploy.ssh.SshToolboxAgentDeployer$startAgent$deployEverything$3$1.invoke(SshToolboxAgentDeployer.kt)
    at com.jetbrains.toolbox.gateway.deploy.ssh.SshToolboxAgentDeployer$startAgent$deployEverything$3$1.invoke(SshToolboxAgentDeployer.kt)
    at kotlinx.coroutines.flow.FlowKt__ReduceKt$firstOrNull$$inlined$collectWhile$2.emit(Limit.kt:132)
    at kotlinx.coroutines.flow.internal.SafeCollectorKt$emitFun$1.invoke(SafeCollector.kt:11)
    at kotlinx.coroutines.flow.internal.SafeCollectorKt$emitFun$1.invoke(SafeCollector.kt:11)
    at kotlinx.coroutines.flow.internal.SafeCollector.emit(SafeCollector.kt:113)
    at kotlinx.coroutines.flow.internal.SafeCollector.emit(SafeCollector.kt:82)
    at com.jetbrains.toolbox.common.coroutines.flow.FinishMarkedSharedFlow$getFlow$1.invokeSuspend(FinishMarkedSharedFlow.kt:26)
    at com.jetbrains.toolbox.common.coroutines.flow.FinishMarkedSharedFlow$getFlow$1.invoke(FinishMarkedSharedFlow.kt)
    at com.jetbrains.toolbox.common.coroutines.flow.FinishMarkedSharedFlow$getFlow$1.invoke(FinishMarkedSharedFlow.kt)
    at kotlinx.coroutines.flow.FlowKt__LimitKt$transformWhile$1$invokeSuspend$$inlined$collectWhile$1.emit(Limit.kt:132)
    at kotlinx.coroutines.flow.SharedFlowImpl.collect$suspendImpl(SharedFlow.kt:397)
    at kotlinx.coroutines.flow.SharedFlowImpl$collect$1.invokeSuspend(SharedFlow.kt)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:586)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:829)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:717)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:704)
    2.6.0.40632 93314 2025-04-21 22:35:00.909 INFO 93694 stdout InputStreamRepeatableFlow Plugin ssh > id 93694 stdout: finishing listening for input
    2.6.0.40632 93314 2025-04-21 22:35:00.914 INFO 93694 stderr InputStreamRepeatableFlow Plugin ssh > id 93694 stderr: finishing listening for input
    2.6.0.40632 93314 2025-04-21 22:35:00.915 ERROR cher-worker-4 ractEnvironmentConnection Plugin ssh > Exception during deployment in environment: (ssh) [email protected]: com.jetbrains.toolbox.gateway.error.DeployError$SshDeployFailed: SSH deploy failed
    at com.jetbrains.toolbox.gateway.deploy.ssh.SshToolboxAgentDeployer.startAgent$deployEverything$errorFromExitCode(SshToolboxAgentDeployer.kt:154)
    at com.jetbrains.toolbox.gateway.deploy.ssh.SshToolboxAgentDeployer.access$startAgent$deployEverything$errorFromExitCode(SshToolboxAgentDeployer.kt:52)
    at com.jetbrains.toolbox.gateway.deploy.ssh.SshToolboxAgentDeployer$startAgent$deployEverything$3.invokeSuspend(SshToolboxAgentDeployer.kt:313)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:586)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:829)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:717)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:704)
    2.6.0.40632 93314 2025-04-21 22:35:04.128 INFO -EventQueue-0 UtilKt Available screens java.awt.Rectangle[x=0,y=0,width=1728,height=1117]
    2.6.0.40632 93314 2025-04-21 22:35:04.128 INFO -EventQueue-0 UtilKt Display size java.awt.Rectangle[x=0,y=0,width=1728,height=1117] with insets java.awt.Insets[top=38,left=0,bottom=76,right=0] for Point(x=1437, y=37)
    2.6.0.40632 93314 2025-04-21 22:35:04.128 INFO -EventQueue-0 TrayWidget Creating new widget
    2.6.0.40632 93314 2025-04-21 22:35:04.128 INFO -EventQueue-0 ComposeWindowManager Show window request. Window: Toolbox, type: WINDOW
    2.6.0.40632 93314 2025-04-21 22:35:04.190 INFO -EventQueue-0 DialogHostKt Received dialog: null
    2.6.0.40632 93314 2025-04-21 22:35:04.190 INFO cher-worker-3 DiskUsageManagerImpl Calculating directory size at /Users/scw/Library/Caches/JetBrains/Toolbox/download
    2.6.0.40632 93314 2025-04-21 22:35:04.190 INFO cher-worker-3 DiskUsageManagerImpl Calculating directory size at /Users/scw/Library/Caches/JetBrains/Toolbox/download done: 298 MB
    2.6.0.40632 93314 2025-04-21 22:35:04.195 INFO cher-worker-1 ApplicationManagerImpl Refreshing feed on window open
    2.6.0.40632 93314 2025-04-21 22:35:04.195 INFO cher-worker-6 GitpodFlexProvider Plugin io.gitpod.flex.toolbox > Gitpod Plugin visibility state changed: com.jetbrains.toolbox.api.remoteDev.ProviderVisibilityState@99e6
    2.6.0.40632 93314 2025-04-21 22:35:05.274 INFO cher-worker-8 GitpodFlexProvider Plugin io.gitpod.flex.toolbox > Gitpod Plugin visibility state changed: com.jetbrains.toolbox.api.remoteDev.ProviderVisibilityState@9aa0
    scw@scwdeMacBook-Pro Toolbox %

    ```
    asd999cxcx
        12
    asd999cxcx  
    OP
       Apr 21, 2025
    界面上的报错内容就是 SSH Deploy failed
    orrinex
        13
    orrinex  
       Apr 24, 2025
    现在 idea 远程开发的时候,每打开一个项目还是都要重新安装插件吗?之前试了直接被这点劝退
    About     Help     Advertise     Blog     API     FAQ     Solana     2380 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 44ms UTC 16:11 PVG 00:11 LAX 09:11 JFK 12:11
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86