簡體   English   中英

如何使用leiningen使用當地罐子開發?

[英]How to use leiningen to develop using local jars?

我意識到這個問題幾乎是這里發現的確切問題。 然而,看到這個問題是1.5歲(左右),我想重新審視它。 如何使用leiningen添加本地依賴項? 當然,這種能力必須存在嗎?

創建一個私有Maven存儲庫 ,然后將以下內容添加到project.clj

:repositories {"local" ~(str (.toURI (java.io.File. "your_local_repository")))}

如果jar基於您自己的項目,您可以使用lein install將它們放入本地.m2,或使用checkout-dependencies功能。

您還可以使用extra-classpaths功能等。

我發現最簡單的(盡管有點hacky)解決方案是執行以下操作:

對於您用作依賴項的現有項目:

  1. 在具有要修改的依賴項的本地項目中,請確保運行lein deps
  2. 克隆此依賴項的repo,以便您可以在本地修改它(obv。確保您使用的是與project.clj文件中指定的版本相同的標記)
  3. 在此依賴項目lein uberjar中運行lein uberjar (相關的project.clj文件所在的位置)
  4. 將生成的獨立jar在target /中復制到本地maven文件的確切路徑/文件中......(例如:〜/ .m2 / repository / project /.../ file.jar); 確保備份原始jar文件,以便稍后可以在需要時將其還原

為了開發自己的項目:

  1. 在您正在開發的項目或插件中,只需運行lein install
  2. 找出您當地的maven倉庫的位置(參見上面的示例路徑)
  3. 像在任何其他leiningen項目中一樣,在測試項目中輸入依賴項信息

再一次,這是一個快速的黑客,也許不是你去做嚴肅的本地開發的方式,但我發現它很容易滿足我想要的。 查看lein help tutorial了解更多信息

暫無
暫無

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

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