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

有没有 idea + spring boot 可以在静态资源修改后自动加载的方案?

  •  
  •   rockyou12 · 2016-12-05 16:16:05 +08:00 · 25385 次点击
    这是一个创建于 2911 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在加了 spring-boot-devtools 依赖过后可以热更新静态资源,但还是需要 make 一下。有没有在代码中修改了过后自动把资源加到 class path ,或者其他方法让刷新下页面静态资源就跟着改的办法?

    21 条回复    2017-10-31 21:51:17 +08:00
    CFO
        1
    CFO  
       2016-12-05 16:24:06 +08:00 via Android   ❤️ 1
    我记得好像有个 auto-reload 选项 需要 chrome 插件配合
    jedrek
        2
    jedrek  
       2016-12-05 16:32:41 +08:00   ❤️ 1
    换 Play Framework 吧,受够了
    chocotan
        3
    chocotan  
       2016-12-05 16:34:59 +08:00   ❤️ 1
    方法 1 :
    ctrl+shift+a registry
    勾选 compiler.automake.allow.when.app.running
    方法 2 :
    用 maven 的启动方式
    spring-boot:run
    Lonely
        4
    Lonely  
       2016-12-05 16:36:41 +08:00
    jrebel 试试?
    EXE
        5
    EXE  
       2016-12-05 16:46:57 +08:00
    静态资源防盗 webapp 目录,添加 gradle task 在打包之前把 webapp 目录下所有文件拷贝到 static 目录
    EXE
        6
    EXE  
       2016-12-05 16:47:18 +08:00
    s/防盗 /放到 /g
    20131115
        7
    20131115  
       2016-12-05 16:49:24 +08:00
    如果输入一下就自动 make ,电脑得热成啥样
    rockyou12
        8
    rockyou12  
    OP
       2016-12-05 16:59:14 +08:00
    @20131115 其实只需要从文件目录读静态资源就行,不是要打包。就是想不到好的方案

    @EXE 主要这个方案是给公司小伙伴整的, gradle 只有我一个人会。公司主要还是用 maven ……

    @chocotan 看来 spring-boot : run 能凑合下……

    @jedrek 新东西用起来虚啊,更不要说多人协助

    @CFO 然而不用命令还是需要 make
    EXE
        9
    EXE  
       2016-12-05 17:05:51 +08:00   ❤️ 1
    @rockyou12 我前几天也因为这个问题纠结了好久, dev-tool/修改 static-path 都没用,因为 spring-boot 启动起来之后加载的是 build 路径下的静态文件,最后发现防盗 webapp 目录是可以的, maven 应该也可以在打包之前拷贝文件
    chocotan
        10
    chocotan  
       2016-12-05 17:21:42 +08:00
    @rockyou12
    eclipse 是木有这个问题的
    勾选 compiler.automake.allow.when.app.running 可能会非常卡,我现在静态文件改好了都按 ctrl+shift+f9 make 一下......
    rockyou12
        11
    rockyou12  
    OP
       2016-12-05 17:23:24 +08:00
    @EXE 兄弟你的目录结构是怎样的,我是:

    ├── main/
    │ ├── java/
    │ │ ├── ...
    │ ├── resources
    │ │ ├── static
    │ │ ├── templates
    rockyou12
        12
    rockyou12  
    OP
       2016-12-05 17:25:51 +08:00
    @chocotan 老大用了很久 eclipse 然后被各种 bug 搞疯了,让我这周培训公司小伙伴怎么用 idea 开发(・∀・)
    EXE
        13
    EXE  
       2016-12-05 17:30:47 +08:00
    zhenjiachen
        14
    zhenjiachen  
       2016-12-05 18:00:33 +08:00
    jrebel ,修改静态资源貌似自动加载,修改类要编译 class 就会自加载。
    Ouyangan
        15
    Ouyangan  
       2016-12-05 20:13:06 +08:00
    @zhenjiachen 最优解
    nicevar
        16
    nicevar  
       2016-12-05 21:00:51 +08:00
    jrebel 是个办法,但是使用了某些库会运行报错
    idea 的 run 就自带 Update resource/update classes and resources/Redeploy/Restart server 四个选项,不过这样还是不方便,始终要用鼠标或者键盘操作两次,直接在 Deployment 里面配置一个 External Source ,我觉得这样最舒服,前端的话直接刷浏览器就行了
    letitbesqzr
        17
    letitbesqzr  
       2016-12-05 22:12:07 +08:00
    静态资源(js css) 还是建议还是单独放一个纯静态的项目里去
    crytis
        18
    crytis  
       2017-04-01 11:23:49 +08:00
    @EXE 放 webapp 可以 springboot 自动识别 webapp ?
    crytis
        19
    crytis  
       2017-04-01 17:19:34 +08:00
    @EXE 放 webapp 里 idea 运行能访问的到, jar 包运行就 404 了。。这是为啥呢
    retiree
        20
    retiree  
       2017-07-08 23:36:33 +08:00
    jack80342
        21
    jack80342  
       2017-10-31 21:51:17 +08:00   ❤️ 1
    这几天翻译了 Spring Boot 最新的官方文档,欢迎👏fork,https://www.gitbook.com/book/jack80342/spring-boot/details
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5688 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 01:46 · PVG 09:46 · LAX 17:46 · JFK 20:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.