【问题标题】:Clojure live browser reload on Linux在 Linux 上重新加载 Clojure 实时浏览器
【发布时间】:2013-08-21 02:30:47
【问题描述】:

有没有像 Rack-LiveReload 这样的东西可以与像 Guard-LiveReload 这样的工具一起用于 Clojure 开发?既然我已经使用了实时重新加载,我真的无法做到。如果没有更方便的方法,我可以下载 LiveReload JS file 并手动将其包含在我的应用程序中,并将其与 Guard-LiveReload 一起使用,但如果有完整的 Clojure 解决方案,我更喜欢它。我无法在我的机器上安装 LiveReload 应用程序,因为我使用的是 Linux,所以我需要 Guard-LiveReload 之类的东西。

我是 Clojure 的新手,但到目前为止,我将使用 Ring 和 Compojure,这可能会有所作为。

【问题讨论】:

    标签: clojure livereload


    【解决方案1】:

    好的,这可以很容易地完成,但是使用 Grunt 和 https://github.com/gruntjs/grunt-contrib-watch(内置 LiveReload 支持),Grunt 可以使用任何语言。

    【讨论】:

      【解决方案2】:

      我浏览了 c2 库,发现作者在 Clojure 中创建了一个 liveelaod 服务器。

      https://github.com/lynaghk/c2/tree/master/vrepl

      他的网站上还有一个截屏视频。 http://keminglabs.com/c2/

      Grunt 可能对你有用,但既然你问到 Clojure 的实现,我想我会提到它。

      【讨论】:

        【解决方案3】:

        恕我直言,在您的情况下,最好和惯用的方法可能是从 Ring Jetty 适配器迁移到 http-kit,它提供了开箱即用的 hot code reload。它还支持 Websockets 并且有一个明显的performance

        当然它与 Ring & Compojure 兼容:HTTP Kit 是 Clojure 的简约、高效、兼容 Ring 的 HTTP 客户端/服务器。它使用事件驱动架构来支持高度并发的异步/同步 Web 应用程序。为 WebSocket 和 HTTP 长轮询/流式传输提供统一的 API

        【讨论】:

        • 热代码重载与 LiveReload 不同 - LR 在 Web 内容更改时触发浏览器刷新,而不是在 Clojure 代码更改时触发。
        猜你喜欢
        • 1970-01-01
        • 2014-12-18
        • 2018-09-04
        • 2021-11-29
        • 2012-06-11
        • 2014-10-03
        • 1970-01-01
        • 2015-09-05
        • 2013-07-28
        相关资源
        最近更新 更多