有 V 友使用 vs code 开发 Java 大型项目吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
superbai
V2EX    程序员

有 V 友使用 vs code 开发 Java 大型项目吗

  •  
  •   superbai 2021-07-20 15:49:58 +08:00 9747 次点击
    这是一个创建于 1544 天前的主题,其中的信息可能已经有所发展或是发生改变。

    RT,和 idea 比体验如何。 我创建了一个 demo Java maven 项目,折腾了半小时也没启动,一直卡在 java build 转圈

    第 1 条附言    2021-07-20 20:08:02 +08:00
    感谢大家讨论,不一一回复了~
    总结下普遍观点和根据回帖得出的一些结论:
    1. 大型项目还是用 idea
    2. vs code 对 Java 有支持,但是还不完善
    3. 使用 vs code 写大型 Java 项目的人较少

    不瞎折腾了,哈哈。继续用 idea
    68 条回复    2021-07-22 23:04:32 +08:00
    kop1989
        1
    kop1989  
       2021-07-20 15:52:32 +08:00
    vsCode 是没有与需求对应的 IDE 时的“不得不”选择。
    又不是万能最优解。

    如果一个依赖第三方插件的免费文本编辑器能吊打商业公司的商业产品,那这个公司也离倒闭不远了。
    waiaan
        2
    waiaan  
       2021-07-20 15:55:23 +08:00
    maven 换成阿里的仓库了吗?
    monetto
        3
    monetto  
       2021-07-20 15:57:02 +08:00
    一个是可以当 IDE 的文本编辑器。
    一个是在 Java IDE 领域的老大哥。

    VS Code 确实很强,但是奈何 IDEA 强到变态了。
    nutting
        4
    nutting  
       2021-07-20 15:57:54 +08:00
    不要虐待自己了
    zhuangzhuang1988
        5
    zhuangzhuang1988  
       2021-07-20 15:59:34 +08:00
    别作死, 即使是软狗 也还是推荐你用 idea
    liuhuansir
        6
    liuhuansir  
       2021-07-20 16:04:01 +08:00
    前段时间折腾这个事情,想在 vscode 写 java 、前端、python,安装了 40 多个插件,最后发现 idea 里装 python 插件,比它舒服太多了,正在考虑入正版的 idea
    RRRSSS
        7
    RRRSSS  
       2021-07-20 16:23:10 +08:00
    没必要 IDEA CE 足矣
    nothingLeft
        8
    nothingLeft  
       2021-07-20 16:29:06 +08:00
    我也折腾过一段时间,有的功能他无法做到的,譬如你把一个包从一个位置拖到另外一个位置。。。这个重构工作量。。。
    maojun
        9
    maojun  
       2021-07-20 16:32:18 +08:00   7
    砍树的时候用瑞士军刀可没有用电锯舒服。
    Jirajine
        10
    Jirajine  
       2021-07-20 16:33:30 +08:00 via Android
    还算不错,毕竟有红帽的团队维护,继承了 eclipse 那一套。
    但 idea 的 Java 太过强大,其他语言 vscode 还能和 idea 比比,但 Java 肯定没法比。
    cweijan
        11
    cweijan  
       2021-07-20 16:33:38 +08:00
    大型项目还是算了, 太卡, vscode 还是比较适合前端开发, 也可以作为数据库客户端, https://github.com/cweijan/vscode-database-client/blob/master/README_CN.md.
    zhuangzhuang1988
        12
    zhuangzhuang1988  
       2021-07-20 16:54:36 +08:00
    @Jirajine 对的, 红帽毕竟不是微软, 微软自己做的 lsp 还是很强的。
    lux182
        13
    lux182  
       2021-07-20 16:59:43 +08:00
    其他的还好,vscode 代码提示太慢了,影响我装逼
    roundgis
        14
    roundgis  
    &bsp;  2021-07-20 17:16:13 +08:00
    老老实实买一个 intellij

    也不贵
    huang119412
        15
    huang119412  
       2021-07-20 18:05:38 +08:00
    没有 idea,真不会喜欢 java 。有了 idea 后感觉比写 node,python 爽多了 。加上 idea 超强的 debug,啧啧啧。
    rb6221
        16
    rb6221  
       2021-07-20 18:12:58 +08:00
    java 和 IDE 已经形成互相促进的生态了,有些东西只有 IDE 有或者 IDE 是最佳支持
    比如 lombok,mybatis 语句的点击跳转等
    lancelock
        17
    lancelock  
       2021-07-20 18:39:43 +08:00
    我用 vscode 写过,代码提示有延迟
    felixcode
        18
    felixcode  
       2021-07-20 18:52:31 +08:00 via Android
    能和 IDE 相比的编辑器估计只有 Vim 和 Emacs
    securityCoding
        19
    securityCoding  
       2021-07-20 19:05:29 +08:00
    没有 idea 我可能不会写代码。。。
    chenqh
        20
    chenqh  
       2021-07-20 19:08:23 +08:00
    @lancelock vscode 怎么配置 java 呀? 不是说 vscode 不支持 j8 了吗?
    p1gd0g
        21
    p1gd0g  
       2021-07-20 19:21:19 +08:00
    用 vscode 写 go 有一段时间了, 完全没问题。
    go 的 vscode 插件是官方支持的,加上 gopls 简直不要太香。
    fpure
        22
    fpure  
       2021-07-20 19:26:16 +08:00
    我一直用 vscode 写 Java,体验不错
    superbai
        23
    superbai  
    OP
       2021-07-20 20:08:49 +08:00
    @waiaan #2 公司内部的 maven 仓库
    superbai
        24
    superbai  
    OP
       2021-07-20 20:09:12 +08:00
    @waiaan #2 没有换,但是用代理也不行
    zoain
        25
    zoain  
       2021-07-20 20:42:14 +08:00 via iPhone
    @zhuangzhuang1988 事实上 java 的插件是微软和红帽一起做的,只不过以红帽的名义发出来了。github 上还可以看见微软一直有计划优化 java 在 vscode 上的体验。
    fpure
        26
    fpure  
       2021-07-20 22:01:23 +08:00
    @felixcode 这可差多了,如果没有 vscode 带来的 LSP,vim 这些工具怕是连 IDE 的尾灯都看不到
    KagurazakaNyaa
        27
    KagurazakaNyaa  
       2021-07-20 22:04:49 +08:00
    挺好用的,可能主要的原因是因为我常年使用 ssh 进行远程开发,在 archlinux 上它工作的非常好
    felixcode
        28
    felixcode  
       2021-07-20 22:18:03 +08:00
    @fpure
    https://github.com/Microsoft/language-server-protocol/wiki/Protocol-History

    Protocol History
    Erich Gamma edited this page on Jun 24, 2016 8 revisions
    The protocol was not created out of thin air, but it builds up on work and experiences from many others. Here is a brief history of the protocol.

    Editors like vim or emacs have used language servers or demons to provide semantic auto complete support since a while.


    vim 被广泛当成 IDE 使用的时候,VSCode 都不知道在哪的。Language Server 也是早就在用的东西。
    Cbdy
        29
    Cbdy  
       2021-07-20 23:26:58 +08:00 via Android
    尝试过,不太行
    stimw
        30
    stimw  
       2021-07-20 23:41:00 +08:00 via Android
    不过微软已经着手完善 vscode 的 java 开发环境了...

    但是恐怕也逃不过开一堆插件的,那又变成了一个巨重型编辑器,插件么开一堆,体验可能还没 idea 好,为什么不直接用 idea...
    24bit
        31
    24bit  
       2021-07-20 23:46:48 +08:00
    对于编辑器我的定位就是轻量级开发工具,项目开发商业化产品的 IDE 还是比自己配置一个出来靠谱的。
    lostberryzz
        32
    lostberryzz  
       2021-07-20 23:51:45 +08:00
    Java 的现代 IDE 只有 IDEA,社区版足矣
    tinytin
        33
    tinytin  
       2021-07-21 02:10:33 +08:00 via iPhone
    试过,折腾了好几天最终还是用了 idea,
    不过把 idea 的主题和快捷键都换成 vscode 一致的了
    suotm
        34
    suotm  
       2021-07-21 02:18:09 +08:00 via Android
    Idea 肯定更加棒~可惜不能完全远程
    suotm
        35
    suotm  
       2021-07-21 02:18:55 +08:00 via Android
    这也是我不得不使用 vs code 和 vim 的原因
    blindie
        36
    blindie  
       2021-07-21 04:12:13 +08:00   1
    @kop1989
    "vsCode 是没有与需求对应的 IDE 时的“不得不”选择。"
    在前端这边,用 VSCode 的比其他的加起来都要多,其他里包括众多商业公司的商业产品,比如 webstorm &l;https://2020.stateofjs.com/en-US/other-tools/#text_editors>。

    “又不是万能最优解。”
    的确,VSCode 不是万能最优解,但我相信任何 IDE 或者文本编辑器都不是,包括 IDEA 。

    “如果一个依赖第三方插件的免费文本编辑器能吊打商业公司的商业产品,那这个公司也离倒闭不远了。”
    这个句式可以像下面这么用吗
    - 如果一个依赖第三方插件的免费浏览器(chrome)能吊打商业公司的商业产品(IE),那这个公司也离倒闭不远了。
    - 如果一个依赖第三方软件的免费服务器操作系统(linux)能吊打商业公司的商业产品(windows server),那这个公司也离倒闭不远了。
    上面两个例子都打了多少年了,我看后面这个公司还没倒啊,它还甚至还源源不断开新产品呢。

    一个软件产品有良好的第三方插件支持和活跃度及产出很高的非官方开发社区,这是非常难以做到的事情,感觉好像反倒成为被攻击的点了?

    IDEA 确实很好,尤其现在在 JAVA 方面,但你的“不得不”和“依赖第三方插件的免费”也未免把集市式的开发方式和产出贬太低了吧。
    wupher
        37
    wupher  
       2021-07-21 08:53:16 +08:00
    一般 build 和 package 会使用 maven 或者 gradle 。

    我司一位同事就是万事万物都用 vim,外面再套个 tmux,那个 vim 到底跑在哪儿就不清楚了,可能是测试服务器或者是他自己的云服务器?

    我自己也试了一下,不熟悉的语言还行,像 Java,Kotlin 这种,还是习惯用 idea,改不过来。算是被 IDE 给宠坏了吧。
    hervey0424
        38
    hervey0424  
       2021-07-21 08:57:33 +08:00
    这是有多想不开
    dinghmcn
        39
    dinghmcn  
       2021-07-21 09:09:23 +08:00
    @wupher #37 vscode 跑在服务器上确实爽啊
    wxw752
        40
    wxw752  
       2021-07-21 09:14:50 +08:00
    @blindie 我来杠一波
    1.注意审题,JavaJavaJava
    2.idea 是 Java 的最优解。
    3.这句话是从 Java 从业者的角度说的,我非常理解楼上那位。在我心中也是如果谁能干翻 idea,jetbrains 就应该黄了(你也提到其他语言用 jetbrains 产品用的少)。

    总结一下:在 Java 领域, idea yyds
    simonlu9
        41
    simonlu9  
       2021-07-21 09:17:07 +08:00
    这种本身就是没事找事,明明有好用的,偏要去折磨自己,浪费时间
    linbiaye
        42
    linbiaye  
       2021-07-21 09:26:40 +08:00
    @blindie u1s1 IE 如果不背靠微软,的确就是倒了了。
    kop1989
        43
    kop1989  
       2021-07-21 9:37:04 +08:00   1
    @blindie #35 从你的信息里能看出,可能我们对“吊打”,“最优解”,“不得不”都有不同的理解和解读。

    1 、在我看来,“吊打”是全方位超越。具体你说的 chrome 和 IE 之间的对比有多离谱我就不反驳了,而 windows server 之所以还活着,就是因为其有足够强大的功能与生态壁垒。在我理解看来,linux 根本就没有“吊打”windows server 。

    2 、JAVA 生态的 IDEA,就是最优解。而 vsCode,并不是。所以我说“vsCode 不是万能最优解”有什么问题?

    3 、前端之所以普遍用 vsCode,是不是因为 webStorm 的固步自封导致跟不上开发者的需求呢?是不是因为 webStorm 对于新兴技术、框架的支持缓慢呢?所以我说的“没有与需求对应的 IDE 时的`不得不`选择”有什么问题呢?

    最后就是对于你说的免费与第三方支持、社区。

    vsCode 在 java 领域不如 IDEA,就等于我不支持免费与第三方社区模式?就等于我贬低 vsCode 的第三方社区模式?只有表达“vsCode 秒天秒地”才能对得起免费生态模式?这你未免也太高看社区模式了吧?

    社区、插件模式导致的低效、不稳定都是限制 vsCode 等玩生态思路产品的掣肘。我能够理解当前软件工程“框架生态”为王的发展趋势,这是互联网巨头从软件的生产资料端竞争与制衡的手段,但这并不代表其模式一定是完美的,更不代表其模式就一定是软件工程领域未来的最优解。
    Vegetable
        44
    Vegetable  
       2021-07-21 09:39:40 +08:00
    用是肯定能用,但是没有 idea 方便。我就在用 vscode,主要是因为电脑内存小+vscode 重度用户。能凑合用。
    ZeroDu
        45
    ZeroDu  
       2021-07-21 09:40:42 +08:00
    开发 java 不要犹豫,选 idea 就对了
    ccppgo
        46
    ccppgo  
       2021-07-21 09:48:59 +08:00
    idea 社区版不要钱为什么纠结这个, 社区版也能写 spring 啊
    edk24
        47
    edk24  
       2021-07-21 09:49:48 +08:00
    iead 对 java 的支持是针对性的, vscode 就像个渣男, 什么语言都能整一手
    lancelock
        48
    lancelock  
       2021-07-21 10:09:49 +08:00
    @chenqh 你说的是 java8?为啥不支持,没听说过
    至于怎么配置,你用 vscode 打开一个 java 文件,它自动会提示你安装相应的插件。你要自己搜就 java extension pack
    louchenabc
        49
    louchenabc  
       2021-07-21 10:16:46 +08:00
    我每天都要代码审查,有一些代码得用 IDE 打开来看,这个时候我会使用 VS Code,包括做一些轻度开发的时候,使用 VS Code 也有非常不错的体验。

    另外在查看开源代码的时候也往往会使用 VS Code,微软在推进 vsc 的 java 开发体验,未来会越来越好用。

    重度开发肯定还是 IDEA 了,不用纠结,两者结合着用就好了。
    zjsxwc
        50
    zjsxwc  
       2021-07-21 10:33:53 +08:00
    机器生成单文件 20M 的 rust ffi 代码,
    vscode 直接挂掉,啥都干不了,
    idea clion 调下默认内存大小,正常使用,

    商业版就是厉害。
    LostPrayers
        51
    LostPrayers  
       2021-07-21 10:34:45 +08:00
    用 vscode 的人最好熟悉命令行和原生部署方式,否则习惯了 idea 那样的操作方式,转换过来肯定用不惯的。
    真不觉得用 idea 能高到哪里去,我倒是见过太多连 IDE 和 idea 都分不清的人
    zhangchongjie
        52
    zhangchongjie  
       2021-07-21 10:39:57 +08:00
    是什么让你有这种想法的?
    bthulu
        53
    bthulu  
       2021-07-21 11:14:07 +08:00
    没有, 我司都用的 windows 记事本, 简单方便性能好
    chanchan
        54
    chanchan  
       2021-07-21 11:19:47 +08:00
    用过,eclipse 都不如
    chaleaoch
        55
    chaleaoch  
       2021-07-21 11:53:26 +08:00
    @kop1989 公司不知道 vscode python vs pycharm
    我觉得差不多.
    fiypig
        56
    fiypig  
       2021-07-21 12:23:03 +08:00 via iPhone
    idea 吧
    3dwelcome
        57
    3dwelcome  
       2021-07-21 13:41:52 +08:00
    @kop1989

    1. 猛男爱折腾,vscode 很适合折腾。
    2. 猛男不用智能提示,裸写代码无所畏惧。
    kop1989
        58
    kop1989  
       2021-07-21 13:55:36 +08:00   1
    @3dwelcome #56

    这点我同意,很多人以用更复杂的配置、更客制化的小众环境来彰显自己的别具一格。
    在这点上 vsCode 确实让人有充足的表现空间与欲望。

    编译、发布的时候甚至还要敲几下命令行,仪式感与极客范拉满。
    magicnobob
        59
    magicnobob  
       2021-07-21 13:59:04 +08:00
    用过,启动 3 个服务后调试,直接崩溃卡死,idea 没有问题,最后还是换回了 idea
    fredli
        60
    fredli  
       2021-07-21 14:02:27 +08:00
    @blindie 看起来你说的都对,但是无非就是在杠,Chrome 的例子对么? Linux 的例子对么?个例推翻一般性的有指导性的描述,没有意义
    z740713651
        61
    z740713651  
       2021-07-21 14:05:28 +08:00
    也在考虑这个事情

    拿到 github copilot 的试用了 真的很香
    所以尝试拿 vscode 写 python
    但是真的不好用。。。
    纠结死了

    部署 代码重构 选择编译器 一键创建新的虚拟环境什么的 都还没找插件。。。
    觉得好麻烦
    cslive
        62
    cslive  
       2021-07-21 15:14:49 +08:00
    @bthulu 居然不是用画图程序写,差评
    blindie
        63
    blindie  
       2021-07-21 16:00:39 +08:00
    @kop1989
    我举的两个例子是用来反驳你后面“公司离倒闭不远”的,我觉得我两个例子已经足够了。别的例子我再举几个,wikipedia,urbandictionary 和传统词典,举一反三的能力要有。
    "更不代表其模式就一定是软件工程领域未来的最优解" 我可没有说集市式开发是最优解,集市化开发失败的多的去了,事在人为,我只是让你不要小看而已,请你不要钻牛角尖在最后一段虚空打靶。
    kop1989
        64
    kop1989  
       2021-07-21 16:19:07 +08:00
    @blindie #62

    我说 vs code 往往是“不得不”的选择,打不过商业 IDE,你说我是贬低社区生态产品。
    我说社区生态产品并没有这么神,没必要过分吹捧,你说我是虚空打靶。
    那请问你对于社区生态产品的态度到底是什么呢?不如 IDE 是贬低,不要过分吹捧你又不赞成。

    我说一个免费社区产品如果能吊打商业收费产品,这个开发收费产品的社区就应该倒闭。
    然后你就给我举了 chrome 与 IE 、Linux 与 Windows Server 、维基与辞典这种完全不合情况的例子。

    所以你认为 chrome 与 IE 、Linux 与 Windows Server 、Wikipedia 和“辞典”,他们都是直接且恰当的竞争关系对吧。

    至此确实就没有比要再继续交流下去了。
    div id="r_10721986" class="cell">
    lsk569937453
        65
    lsk569937453  
       2021-07-21 16:24:53 +08:00
    Java 的 idea 社区版就能完爆 vscode 了,都不用上付费的。。
    NCE
        66
    NCE  
       2021-07-21 20:28:08 +08:00
    老老实实买一个 intellij IDEA

    也不贵
    myCupOfTea
        67
    myCupOfTea  
       2021-07-22 09:24:07 +08:00
    java 就无脑用 idea
    EscYezi
        68
    EscYezi  
       2021-07-22 23:04:32 +08:00 via iPhone
    虽然前面已经说了这么多,还是想说 idea 开发 Java 真的是无敌,对得起这个价格
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2748 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 00:18 PVG 08:18 LAX 17:18 JFK 20:18
    Do have faith in what you're doing.
    ubao 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