簡體   English   中英

沒有REPL重啟的任何方式添加依賴項lein項目?

[英]Any way to add dependency to lein project without REPL restart?

我現在做的是打開project.clj,在那里添加依賴項,運行lein deps restart repl,然后userequire等等。

問題是我真的不想重新啟動repl,因為啟動時間很慢,我不得不重新加載我的文件。

那么是否有更好的方法為lein項目添加依賴? 沒有重新啟動repl?

您可以使用Alembic ,一個動態類路徑加載器和依賴項解析器。 好處是它不會加載所有石榴依賴。

將以下內容添加到.lein/profiles.clj

{:user
  {:dependencies [[alembic "0.3.2"]]}}

然后在您的Repl中加載您需要的類路徑,如果需要,它們將通過lein從存儲庫中lein

(require 'alembic.still)
(alembic.still/distill '[enlive "1.1.5"])

(require 'net.cgrand.enlive-html)

為了快速測試,您可以使用石榴來動態添加依賴項

=> (use '[cemerick.pomegranate :only (add-dependencies)])
nil
=> (add-dependencies :coordinates '[[incanter "1.2.3"]])

實際上添加一個依賴我通常命中

  • Alt-x nrepl-restart
  • ctrl -c ctrl-k重新加載文件,
  • ctrl -c alt -n返回緩沖區中的命名空間i

整個過程需要jvm啟動時間(我同意這是一個痛苦的觸摸)加上五秒鍾。 它有助於使項目處於加載文件完成所有需要初始化的狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM