V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mawen0726
V2EX  ›  程序员

哪套基于本地的开发方案好一些,很纠结

  •  1
     
  •   mawen0726 · 2023-02-10 15:01:53 +08:00 · 3601 次点击
    这是一个创建于 438 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近从 mac 换回了配置较好的 win 本,确定使用 vm 来作为开发环境,现在尝试了两种方案

    1. 虚拟机是 ubuntu 带 gui 的,然后在上面跑 IDEA 来开发
    2. 虚拟机不带 gui ,然后用 vscode 的 remote-ssh 进行开发

    这两种方案都不是很完美

    • 方案 1 的话画面稍有卡顿不跟手,然后要切换 win 的其他应用还要多按一下 alt+ctrl ,然后还有部分的快捷键无效,想配置部分组合快捷键不知道为什么在 idea 不生效(例如 ctrl+⬅=home )
    • 方案 2 的话就是快捷键的问题了,用了很久 IDEA ,已经是 IDEA 的形状了,尽管 vscode 装了很多插件,但还是没有 IDEA 那样用起来顺手。然后也不知道 vscode 实际开发起来有没有什么坑,主要是开发 java ,react ,vue ,python 。

    想问问大家应该选什么方案比较好,然后最后想吐槽下 gateway ,为什么是这样设计,按项目(打开文件夹)来启动进程,非常吃资源,vscode 的这种就非常的轻量舒服

    26 条回复    2023-06-20 22:14:58 +08:00
    chendy
        1
    chendy  
       2023-02-10 15:05:48 +08:00
    直接在 win 上跑 IDEA 做开发不能满足的场景是啥呢?…
    justfindu
        2
    justfindu  
       2023-02-10 15:08:38 +08:00
    vm 不就是你的运行环境吗, 使用共享目录放代码呀.
    mawen0726
        3
    mawen0726  
    OP
       2023-02-10 15:10:19 +08:00
    @chendy 主要在 win 上面跑 idea 的话开发环境要搬到本地来了(因为感觉 gateway 太吃资源了,不适合本地用),不是很想污染本地环境...用 vm 作为开发环境的话可以随便换
    acctv2
        4
    acctv2  
       2023-02-10 15:10:25 +08:00
    @chendy 我能想到的只有 Linux 上的 C/C++开发,但是好像也没必要在 Linux 下写代码。
    dode
        5
    dode  
       2023-02-10 15:10:41 +08:00
    IDEA 也支持 remote-ssh 类似技术吧
    libook
        6
    libook  
       2023-02-10 15:15:31 +08:00   ❤️ 1
    我是用 WSL2 ,然后在 WSL2 里装 IDEA ,在 Windows 上装 XServer 来直接显示 WSL2 里的 GUI 。
    好像现在新版 Win11 有自带 GUI 支持的 WSL 了,我是几年前开始用的这个方案:
    https://github.com/libook/WSL-GUI
    paopjian
        7
    paopjian  
       2023-02-10 15:15:53 +08:00
    idea 也可以用 docker 安装,在浏览器上用
    squarefong17
        8
    squarefong17  
       2023-02-10 15:18:23 +08:00
    或许可以试试反过来。。。工作状态下在 Ubuntu 上开 windows 虚拟机,纯娱乐的时候再直接进 windows ,反正现在硬盘便宜,sn770 ,2t 也就 1000 块钱,可以随便装双系统。
    bakaft
        9
    bakaft  
       2023-02-10 15:22:38 +08:00
    mawen0726
        10
    mawen0726  
    OP
       2023-02-10 15:23:24 +08:00
    @libook wsl2 之前用过,感觉会有两个问题,一个是内存越用越大(不知道是不是跑 docker 的问题),另一个是静态 ip 的问题,现在不知道有没有好转

    @dode 这个目前我能找到的只有 gateway 和 fleet ,但是这两都不是令我满意,gateway 太吃资源,fleet 目前就是个半成品,一言难尽

    @paopjian 这个我去了解一下,还没看过这种方案
    debuggerx
        11
    debuggerx  
       2023-02-10 15:36:44 +08:00
    win 本为什么不直接装 linux
    cslive
        12
    cslive  
       2023-02-10 16:28:18 +08:00
    wslg 直接装带 ui 的软件就行
    liuhuansir
        13
    liuhuansir  
       2023-02-10 16:33:59 +08:00
    我折腾了很久,上面的方案都试过,最后还是回到 win 本地开发
    mawen0726
        14
    mawen0726  
    OP
       2023-02-10 16:48:54 +08:00
    @squarefong17 感觉要重启,然后还要选启动盘比较麻烦,还是觉得虚拟机安逸点
    mawen0726
        15
    mawen0726  
    OP
       2023-02-10 16:49:18 +08:00
    @bakaft 这个折腾了半小时,没搞懂,放弃了...
    mawen0726
        16
    mawen0726  
    OP
       2023-02-10 16:54:10 +08:00
    感觉还是在 vm 里面跑 idea ui 算了,延迟还算可以接受。对比了下 vscode 和 idea 的快捷命令,vscode 还是差太多。希望 fleet 能够快点完善好,看看能不能和 vscode 有一样的体验
    BeautifulSoap
        17
    BeautifulSoap  
       2023-02-10 17:01:50 +08:00
    @mawen0726 内啥,wsl2 可以设置内存上限的
    https://www.cnblogs.com/yyfh/p/16526955.html
    具体 .wslconfig 可以设置的参数参考微软官方文档
    https://learn.microsoft.com/en-us/windows/wsl/wsl-config#configuration-setting-for-wslconfig

    至于静态 ip ,我记得 win11 开始似乎已经可以设置静态 ip 了,好像
    bcllemon
        18
    bcllemon  
       2023-02-10 17:07:20 +08:00
    Rache1
        19
    Rache1  
       2023-02-10 17:18:04 +08:00
    @liuhuansir 同 😂,折腾来折腾去,最终还是回到了直接本地开发。
    mawen0726
        20
    mawen0726  
    OP
       2023-02-10 17:37:16 +08:00
    @bcllemon 这个尝试过了,就是太占资源了,它是按项目分配资源,打开一个文件就会对应在服务端跑一个进程,一个进程约占用 20%的内存和若干 cpu 。这种模式比较适合那种大公司和多人协作吧,不适合我这种本地个人用的
    jin7
        21
    jin7  
       2023-02-10 22:25:23 +08:00
    直接用 windows 开发了....
    jin7
        22
    jin7  
       2023-02-10 22:25:41 +08:00
    windows + scoop 安装各种工具
    wuyiccc
        23
    wuyiccc  
       2023-02-11 16:29:18 +08:00
    win10 宿主机(32G)+Ubuntu20 虚拟机不带桌面(分 16G) win10 远程 xrdp 连接到 Ubuntu, 感觉还行
    mawen0726
        24
    mawen0726  
    OP
       2023-02-23 14:09:12 +08:00   ❤️ 1
    更新一下最近一段时间的折腾经历
    1. 用了一段时间 vm 带 gui 开发,画面延迟尚能接受,就是中文输入法稍微有点难受和部分快捷键和 win 不一致
    2. 尝试用了一段时间 gateway ,一开始感觉还好,过了好几天后发现会有丢失输入的问题和延迟输入的问题( vm 带 gui 都没这个问题),然后就是资源占用的问题了,打开一个项目占用 2.4g 内存和 10%左右的 cpu
    3. 然后又尝试了 xrdp ,这个等于 ubuntu-server+gnome+xrdp ,感觉不如直接 ubuntu-desktop ,感觉比用 vmware 的界面还卡(可能是没分配 3d 图形化性能给这个 vm )
    4. scoop 尝试在本地弄开发环境,但是好像国内环境用这个比较麻烦,加上对 power shell 使用代理的命令不熟悉,放弃了
    5. 然后就是直接本地环境开发了,说一下我之前为什么不喜欢本地开发的原因,基于之前的印象,安装各种环境都是 exe ,msi ,导致环境对我来说都是黑盒,环境出问题很大概率要重装。然后今天找了一个各大语言的环境安装(java ,node ,python ,go)都有绿色版,解压配置环境变量即可,这样更换环境也不会有大问题。
    * 另外说一句,java8 没有提供直接解压的包,需要通过 7zip 去提取,java11 直接就提供了。

    所以我现在用的本地开发(真他妈流畅舒服),要跑的东西放 vm 上面跑,希望不会有什么幺蛾子吧...
    mawen0726
        25
    mawen0726  
    OP
       2023-02-23 14:16:19 +08:00
    再补充一下
    jdk8 的 exe 提取绿色版方法
    https://stackoverflow.com/questions/1619662/how-can-i-get-the-latest-jre-jdk-as-a-zip-file-rather-than-exe-or-msi-installe

    另外楼上一些说装双系统,虚拟机装 windows 办公的,这个主要还是中文输入法的原因(代码写中文注释)

    然后 windows 编译 java 速度慢这个我没测,我觉得这个丢到 vm 就可以了

    wsl 、wslg 还没有尝试,后面尝试了再分享一下
    ly879
        26
    ly879  
       308 天前
    @mawen0726 有新的分享吗。关于 wsl2.目前也在纠结 vscode 远程 wsl2 中的 docker 还是 wslg 运行 wsl2 中的 vscode 。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1087 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:01 · PVG 03:01 · LAX 12:01 · JFK 15:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.