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

有没有熟悉 VScode 开发 SpringBoot 应用的

  •  1
     
  •   iamyow · 2022-12-02 10:32:46 +08:00 · 3794 次点击
    这是一个创建于 482 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前几天看到有篇用 VScode 开发 Java 项目的,本着开源、轻量的心态,去搞了一下 VScode 。
    当我环境配置好了,打开了我一个用 xml 配置文件注入 bean 的 SpringBoot 项目,项目确实能正常跑。
    但是 VScode 的插件无法识别这类 bean ,导致我无法在 xml 和对应的 bean 文件跳转。

    像这样:
    <bean id="XXXService" class="com.***.service.impl.XXXServiceImpl"/>
    而且 class 属性输入包名时也无法弹出智能提示。

    有没有人有这样的问题?是插件不支持吗?
    GoRoad
        1
    GoRoad  
       2022-12-02 10:38:56 +08:00
    别难为自己了,写个小 demo 还行,框架还是直接 IDE 吧 idea 是最好的选择
    byte10
        2
    byte10  
       2022-12-02 10:41:18 +08:00
    既然用了 springboot 可以直接 javaconfig ,不用 xml 配置 bean 吧。我用 vscode + springboot 。
    Oktfolio
        3
    Oktfolio  
       2022-12-02 10:46:29 +08:00
    用啥 xml 啊
    iamyow
        4
    iamyow  
    OP
       2022-12-02 10:51:46 +08:00
    @byte10 公司的项目架构,不是我想改就改的,而且测试了一下 Mybatis 。目前 Mybatis 的 mapper 和 xml 是有插件支持方法跳转的,但是 XML 里的<resultMap type="com.***.xxxEntity">还不支持。我没理由把 orm 也改了吧
    iamyow
        5
    iamyow  
    OP
       2022-12-02 10:54:09 +08:00
    @Oktfolio 那还不如用回 IDEA
    fzdwx
        6
    fzdwx  
       2022-12-02 11:25:43 +08:00
    写 java 的话, idea 就目前来说是最好的选择
    liuhuansir
        7
    liuhuansir  
       2022-12-02 11:34:07 +08:00
    @iamyow 我之前也入坑了 vscode ,写了没几天就回 idea 了,idea 贴心的小细节太多太多了,再给 vscode 几年时间也做不到的,对于 Python 来说也是一样,写前端倒是不比 webstorm 差
    shellic
        8
    shellic  
       2022-12-02 11:37:04 +08:00
    为什么要自己为难自己,有现成的 IDEA 不用
    fiypig
        9
    fiypig  
       2022-12-02 11:38:09 +08:00
    springboot 应该还好,cloud 好像就比较麻烦
    dragondove
        10
    dragondove  
       2022-12-02 11:41:39 +08:00
    用 vscode 写 java 其实并不轻量,启动速度上来说,它加载完插件 idea 也差不多开好了。内存占用来说,vscode 依赖 jdtls ,jdtls 加载一个项目后吃差不多 2G 的内存,和 idea 比也没太大优势。vscode 开发 java 的体验也还需要发展,目前的优势可能就是免费吧,不知道和社区版 idea 比差多远。
    iamyow
        11
    iamyow  
    OP
       2022-12-02 11:56:01 +08:00
    能不能先不讨论用不用 IDEA ,而且我也没说我不能用 IDEA
    我就是想折腾一下怎么解决用 VScode 开发时遇到的问题(没事找事干)

    我肯定知道 IDEA 去搞肯定没问题,也肯定知道用 javaconfig 代替 xml ,就没有这个问题
    那我这么做岂不是在逃避问题?我觉得遇到问题要想办法解决的,而不是直接逃避,直接用回 IDEA ,回去自己的舒适区
    iamyow
        12
    iamyow  
    OP
       2022-12-02 12:11:09 +08:00
    @dragondove 我还真的对比过,内存的话,IDEA 社区版比专业版大一点,而 VScode 明显比他们小,但是 VScode 运行时比较占用 CPU ,而且编译速度慢那么几秒。但是论磁盘占用的话,IDEA 社区版 1GB ,专业版 2GB ,VScode 占 370MB
    byte10
        13
    byte10  
       2022-12-02 12:22:55 +08:00
    @iamyow 改 bean 的声明方式,不需要调整项目架构吧? javaconfig 代替 xml 配置,会无法兼容原来的开发方式么。。

    我也是在 vscode 遇到挺多问题的,还好我开发的项目都没啥大问题。vscode 的绝对优势是 remote ,统一开发环境和体验😄,idea 变成了备选方案了
    tgich
        14
    tgich  
       2022-12-02 12:53:58 +08:00
    别折磨自己
    chendy
        15
    chendy  
       2022-12-02 13:14:16 +08:00
    vscode 也许大概可以直接试试 eclipse ?反正一家人
    虽然 vscode 很努力,但是还是不如 idea ,至于内存么,插件关掉一大半就完事了(反正用不到
    xaplux
        16
    xaplux  
       2022-12-02 13:14:54 +08:00
    你用个社区版的 IDEA ,都比这玩意好用
    binaryify
        17
    binaryify  
       2022-12-02 13:56:37 +08:00
    专业的事情交给专业的工具做
    zhangxh1023
        18
    zhangxh1023  
       2022-12-02 13:59:45 +08:00
    找了一下确实没有。。。用 vscode 写了好几年的 java 了,确实遇到 xml 都很难受。mybatis 之类的也是。
    zilongzixue
        19
    zilongzixue  
       2022-12-02 14:50:56 +08:00
    为啥还要用 xml 这种古老的写法,直接 @Configuration 类 @Bean 不就行了
    Morii
        20
    Morii  
       2022-12-02 15:01:15 +08:00   ❤️ 1
    >>> 那我这么做岂不是在逃避问题?我觉得遇到问题要想办法解决的,而不是直接逃避,直接用回 IDEA ,回去自己的舒适区


    钻木取火遇到问题了,邻居说他家有火柴。

    OP:这是逃避问题!火柴是舒适区!
    liuhuansir
        21
    liuhuansir  
       2022-12-02 15:03:57 +08:00
    @iamyow 感觉你就是在抬杠,大家不是给了答案么?就是没有办法,要么忍,要么。。。,如果你实在闲着没事干,自己去写插件实现啊
    ChenSino
        22
    ChenSino  
       2022-12-02 15:05:09 +08:00
    vscode 本来就是编辑器,又不是 ide
    yazinnnn
        23
    yazinnnn  
       2022-12-02 15:06:19 +08:00
    折腾 ide 不是疯了么...
    你又不是在折腾 emacs 或者 vim
    947
        24
    947  
       2022-12-02 16:16:16 +08:00
    用了一段时间社区版的 IDEA ,发现和专业版相差好像不是很大
    lancelock
        25
    lancelock  
       2022-12-02 18:29:15 +08:00
    这叫逃避问题,6
    selca
        26
    selca  
       2022-12-02 18:54:01 +08:00
    想办法解决可以啊,源码都在 GitHub 摆着呢,你先读一读那几个插件源码,看一看几个插件的 issue 吧
    https://github.com/spring-projects/sts4/tree/main/vscode-extensions
    selca
        27
    selca  
       2022-12-02 18:56:12 +08:00
    @selca #26 插件很容易顺藤摸瓜找到开源地址的,你有那个能力去“想办法解决”,那自己去提 pr 呗
    wjx0912
        28
    wjx0912  
       2022-12-02 19:08:45 +08:00
    感觉楼主方向就不对,勿喷~~~
    能不能用斧头切菜(你们都不要提菜刀两个字),只需要说斧头怎么切豆腐黄瓜就行。

    idea 是唯一选择,这不是逃避问题。。。
    luckylvke
        29
    luckylvke  
       2022-12-02 19:18:43 +08:00
    因为不想在家里的电脑装 ide ,之前居家办公的时候就搞了 WSL + vscode 开发 JAVA ,普通的 Spring + maven 开发。总的来说用起来还是不错的,就是配置要处理的东西很多,不如 IDEA 开箱即用,没耐心的不建议尝试。


    最终开发、构建、单元测试、debug 等都正常,但省个蛋疼的事:依赖不能下源码,就算是我本地 install 的源码,vscode 里 dependencies 依旧不能看源码,导致没法打断点

    哪位大佬知道求助下,其它有人要配置流程的话我也看看写一个
    azusachino
        30
    azusachino  
       2022-12-02 22:08:12 +08:00
    @luckylvke 直接 mvn dependency:sources 呢?除了 java 插件包,我还安装了 spring boot tools ,Java Decompiler 。至于楼主说的 xml ,感觉确实没解,毕竟 SpringMVC ,差不多能称之为 deprecated 的版本了。。
    ychost
        31
    ychost  
       2022-12-03 09:34:35 +08:00
    有条件还是用 idea 吧,vscode 加上各种插件不见得比 IDEA 流畅,就像 vim 加上各种豪华配置就是一个阉割版的 vscode
    aitaii
        32
    aitaii  
       2022-12-03 10:55:08 +08:00
    vscode 加一堆插件= idea ,可能还没 idea 体验好
    boatrain1111
        33
    boatrain1111  
       2022-12-03 12:06:54 +08:00
    vscode 当玩具玩玩就行了,专业度还得是 jetbrains
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1434 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 17:26 · PVG 01:26 · LAX 10:26 · JFK 13:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.