steptodream
V2EX  ›  Java

idea 热加载怎么设置,麻烦知道的告诉一下新手

  •  
  •   steptodream · Aug 7, 2021 · 5190 views
    This topic created in 1915 days ago, the information mentioned may be changed or developed.
    从 vscode 转 idea,我网上搜了,说要修改 Registry 里的 compiler.automake.allow.when.app.running,可是我设置里 compiler 开头的根本没有这一项,我的 idea 版本是 2021.2 ultimate edition
    23 replies  •  2021-08-16 11:26:25 +08:00
    xiao109
    xiao109
    Aug 7, 2021
    1
    装个 Jrebel
    kba977
    kba977
    Aug 7, 2021
    2
    `compiler.automake.allow.when.app.running` 这个设置不在 compiler 里, 试试按默认的 `Shift + Option + Command + /` 试试
    jorneyr
    jorneyr
    Aug 7, 2021
    3
    这个只是类修改了自动编译,不是热加载。要使用热启动使用 spring boot devtools,要使用热加载使用 JRebel 。
    steptodream
    steptodream
    OP
    Aug 8, 2021
    4
    @kba977 你看错我说的了 我说的就是你说的命令 用 CTRL + SHIFT + A 打开了一个小窗口 然后搜索 Registry 然后再找 compiler.automake.allow.when.app.running 可是这里的一栏里以 compiler 开头的根本就没有 compiler.automake.allow.when.app.running 这一项

    @jorneyr 那自动编译咋弄了 我这根本没有网上说的那一项 根本没法修改
    steptodream
    steptodream
    OP
    Aug 8, 2021
    5
    kba977
    kba977
    Aug 8, 2021
    6
    steptodream
    steptodream
    OP
    Aug 8, 2021
    7
    @kba977 我打开的就是你这里的配置 根本没有那一项 估计是版本不同 你看我上一楼发的图片地址 就是这个地方的截图 把汉字点改成. 访问
    kba977
    kba977
    Aug 8, 2021
    8
    @steptodream #7 你的图挂了,稍等我升级到最新版,然后看下
    jackytang520
    jackytang520
    Aug 8, 2021
    9
    最新版本好像没有这一项设置了
    steptodream
    steptodream
    OP
    Aug 8, 2021
    10
    @jackytang520 那你知道咋设置能实现这个功能吗 我在 vscode 下一保存就自动生效 测试的时候很方便
    kba977
    kba977
    Aug 8, 2021
    11
    @kba977 #8 升级到最新版本了, 确实没有那一项了
    1. 添加一下 spring-boot-devtools 依赖
    2. 在设置 Build, Execution, Deployment 中 Compiler 里 设置 勾上 Build project automatically

    3. 修改一下项目配置


    之后就可以了
    steptodream
    steptodream
    OP
    Aug 8, 2021
    12
    @kba977 好的 谢谢了 我试试
    jin7
    jin7
    Aug 8, 2021
    13
    用 jrebel 好了
    binbinbbb
    binbinbbb
    Aug 8, 2021
    14
    新版找不到 了 compiler.automake.allow.when.app.running
    cslive
    cslive
    Aug 9, 2021
    15
    点那个锤子一样的按钮,或者 ctrl+F9
    ClutchBear
    ClutchBear
    Aug 11, 2021
    16
    什么都不用改啊,
    创建 springboot 项目的时候, 勾选 springboot dev tool 就行
    steptodream
    steptodream
    OP
    Aug 12, 2021
    17
    @ClutchBear 我勾选了 spring-boot-devtools 的 pom.xml 里也有 但是在运行中修改代码保存后不会自动编译 按 kba977 的#11 楼说的设置了就可以了
    ClutchBear
    ClutchBear
    Aug 12, 2021
    18
    @steptodream 肯定要手动点右上角的编译的绿色锤子图表啊.
    项目大了后, 每次修改代码保存就自动编译是不合理的, 很耗时间
    steptodream
    steptodream
    OP
    Aug 12, 2021
    19
    @ClutchBear 要不要自动编译这不是个人的需求吗 哪有所有开发者都是一种需求的 需要自动编译的时候就自动编译 不需要的时候改设置不就行了
    hcen1997
    hcen1997
    Aug 12, 2021
    20
    目前我自己开发的感觉(3 年外包)
    热加载不是很好用, 因为项目都奇奇怪怪的
    idea 自带的 debug 启动方式和热加载方法内代码就挺好的,
    其他需要热加载的地方, 就好好提升自己的编码设计水平吧

    -- idea 自带热加载, 可以重新加载方法内的代码
    Hot Swap Classes
    steptodream
    steptodream
    OP
    Aug 12, 2021
    21
    @hcen1997 就说个热加载功能 你都能扯到编码水平了 正所谓 满管子不响半罐子咣当
    lap510200
    lap510200
    Aug 13, 2021
    22
    @hcen1997 楼主问的不就是 idea 在 debug 模式如何热加载服务吗,你认为的所谓的编码水平指的是什么,是你对 java 框架的熟练度吗?
    hcen1997
    hcen1997
    Aug 16, 2021
    23
    @lap510200 @steptodream
    idea 的 debug 模式 可以很简单的热加载方法中的代码, 你们同意吧?

    那么在设计程序的时候, 把自己不确定的部分, 放在可以热加载的函数中, 边调试边写.
    好像自己就变成了一个机智的函数体.

    至于更加复杂的热加载技术, 我承认我自己不会使用, 对不起, 见笑了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2921 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 11:32 · PVG 19:32 · LAX 03:32 · JFK 06:32
    ♥ Do have faith in what you're doing.