• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cocong
V2EX  ›  程序员

项目太大,经常花费时间去找代码文件,有什么好的解决方法?

  •  
  •   cocong ·
    hzh-cocong · Oct 28, 2022 · 3249 views
  •   You need to sign in to view this topic
    This topic created in 1384 days ago, the information mentioned may be changed or developed.

    如题,以前我是搞 PHP 的,没有编译一说,面对大量文件,我使用 VSCode Workspace ,每个功能保存为一个 Workspace ,不用的时候可以直接关掉窗口,下次要用就点击一下保存的 Workspace 文件,会立刻恢复上一次的工作状态(包括光标位置)。这很舒服,文件再多也不怕,毕竟每个功能所涉及的文件不多。

    现在搞 JAVA ,用的是 IDEA ,运行 SpringBoot 需要编译,好处是可以 Debug ,加上热加载,也可以做到修改不重启就生效。但是负责的功能多了,打开的文件越来越多,就很乱,就想着能不能像 VSCode 那样工作。

    貌似 IDEA 没有 Workspace 插件,那就试试 VSCode ,目前我已经可以完全使用 VSCode 进行 JAVA 开发,所以可以用上 VSCode 的 Workspace 功能。但是因为 SpringBoot 需要编译运行,所以就算同时开启多个窗口,也只有一个能 Debug ,而且窗口关闭后程序也就停止运行了。

    唯一的解决方法是使用 MVN 命令在其它地方运行,然后用 VSCode 编辑代码,这么做 Debug 肯定是不行了,但对我来说这个问题不大,最大的问题是热加载也没了,没了热加载,那每次修改都要重启,要知道那么大的项目,重启好几十秒太浪费时间了。

    不知道 MVN 有什么办法支持热加载,就想 PHP 那样,修改文件保存就生效,那就真的可以抛弃 IDEA 了。

    13 replies    2022-10-29 14:49:03 +08:00
    cocong
        1
    cocong  
    OP
       Oct 28, 2022
    突然想到这是测试方式不对,正确的做法应该是编写测试用例,这样就和 PHP 差不多了,不过国内的环境大家知道,哪有人写测试用例,引入这些测试依赖怕是会有人反抗。
    documentzhangx66
        2
    documentzhangx66  
       Oct 28, 2022   ❤️ 2
    这个问题其实不要怪 IDE ,给你一个建议,你可以试试:

    1.闲鱼买 GTX 750 TI ,这是能有 4 个显示输出的最便宜显卡。买 2 块。

    2.至少 2 个显示器输出,有 2 个 PCI-E 16x 显卡插槽的 ATX 大主板。

    到此为止,一共有 10 个显示输出。

    然后买配套的:

    3.上下双屏显示器支架,买 5 个。

    4.支持壁挂的 21.5 寸 1080p 显示器,买 10 个。注意一下显卡接口,尽量选 VGA + HDMI 的。

    5.相关的视频连接线、转接头。

    6.至少 6 代 i7 处理器。

    7.至少 64G 内存。

    然后你再试试看,,窗口乱不乱。
    fengpan567
        3
    fengpan567  
       Oct 28, 2022
    idea 自带的 favorites 里有 bookmark 功能
    lyxeno
        4
    lyxeno  
       Oct 28, 2022
    intellij 切换分支时也会恢复到目标分支的工作状态(打开的文件等)

    听你的需求,似乎一个功能开一个分支非常适合你
    需要修改不同的功能时就切换不同的分支?
    Rache1
        5
    Rache1  
       Oct 28, 2022
    用 Toolbox 安装 IDEA ,然后用 Toolbox 的 Projects 去打开之前的项目也行呐,还可以收藏,而且 IDEA 默认就是保存上次状态的吧
    tool2d
        6
    tool2d  
       Oct 28, 2022
    同一套大代码库,我一般都是建立很多个小工程,这样测试和编写专项代码都很快。
    itskingname
        7
    itskingname  
       Oct 28, 2022
    也可以试一试

    Shift + Commond + F 关键词搜索
    Shift + Command + O 文件名搜索
    cslive
        8
    cslive  
       Oct 28, 2022
    双击 Shirft 键
    tedzhou1221
        9
    tedzhou1221  
       Oct 28, 2022
    热加载可以用 jrebel ,vscode 有插件。

    还有就是引入测试依赖很正常,没人反抗,我想不到反抗的理由(就算你不写测试用例)
    bthulu
        10
    bthulu  
       Oct 28, 2022
    看你说了这么多, 无非就是想在 cmd 里运行 spring 的时候支持热重载.
    建议你看一下下面这俩
    https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto.hotswapping, spring.devtools.restart.additional-paths
    https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#application-properties.devtools.spring.devtools.restart.additional-paths
    fy
        11
    fy  
       Oct 29, 2022 via Android
    记文件名,vsc 是 ctrl p 查找切换
    idea 是敲两下 shift
    honkew
        12
    honkew  
       Oct 29, 2022
    @documentzhangx66 眼睛看得过来吗
    documentzhangx66
        13
    documentzhangx66  
       Oct 29, 2022
    @honkew 习惯就好了,而且很方便。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3071 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 14:07 · PVG 22:07 · LAX 07:07 · JFK 10:07
    ♥ Do have faith in what you're doing.