![](/img/trans.png)
[英]How to use a compiled Clojure class in Eclipse with Counterclockwise
[英]How to make Eclipse/Counterclockwise use Macports installed Clojure
我對clojure很新,經過幾個小時擺弄Netbeans / Enclojure和Eclipse / Counterclockwise后,我終於設置了Eclipse / Counterclockwise - 只是因為它是我能夠實際運行的第一個。
但是,在REPL中,我得到了Clojure版本1.2,雖然我在我的系統(使用Macports )工作的那個是1.3。
如何使Eclipse / Counterclockwise使用此版本? 除了語法高亮規則和其他一些小的東西之外,我在首選項中基本上找不到關於Clojure的任何內容。
基本上,Eclipse / CCW REPL使用的Clojure版本是Clojure版本,它包含在您啟動REPL的項目的類路徑中。 如果將它包含在項目的引用庫中,則REPL將從該版本的Clojure開始。
您可以通過在Package Explorer> Properties> Java Build Path> Add Jars> Browse to(Macport)clojure jar文件> Finish中右鍵單擊項目名稱來包含它。
但是,由於您需要為所有外部庫和它們自己所依賴的庫(無論是基於Java還是基於Clojure)執行此操作,因此在構建分發項目時,這可能會變得乏味,甚至更糟。
以結構方式完成它的最簡單方法是將Leiningen與Leiningen CCW插件結合使用。 首先根據leiningen頁面安裝Leiningen。 然后調用lein plugin install lein-ccw "1.2.0"
來安裝leiningen CCW插件。
如果您正在開始一個新項目,請cd到應該放入項目的父目錄。然后,使用lein new projectname
,它將在\\ projectname lein new projectname
創建一個新的Clojure項目結構。
在該項目的根目錄中,將創建一個project.clj
文件,用於管理和下載您要使用的庫以及它們自己所依賴的所有庫(有關詳細信息,請參閱leiningen站點)。 默認情況下, lein new
會將對Clojure的引用放在那里。
這些庫將存儲在本地庫存儲庫中,因此只會將其寫入磁盤一次。
cd進入\\ projectname lein deps
並運行lein deps
,leiningen將下載當前的依賴項(在本例中僅為clojure),並將它們放入存儲庫中。
現在運行lein ccw
,ccw lein插件將創建並更新Eclipse項目和類路徑文件。
之后,您可以通過選擇菜單文件>導入>常規>將現有項目導入工作區>選擇根目錄>瀏覽到項目位置>完成,在Eclipse中打開項目。
現在,如果您需要為項目創建一個新庫,那么您唯一需要做的就是將庫數據放在project.clj依賴項部分中。 其他庫的依賴符號和版本號可以在Clojars站點或Github自述庫中找到。
然后,再次從項目目錄運行lein deps
以下載並安裝正確的庫,並lein ccw
來更新Eclipse項目和類路徑文件。 在Eclipse Package Explorer中刷新項目樹,您的項目將再次更新,包括您需要的所有新庫。
您甚至可以通過遵循本指南在Eclipse中創建“外部運行配置”,以與添加到lein deps
之一相同的方式創建lein ccw
run命令來自動執行上lein deps
。 這樣,您只需在編輯project.clj后按下一個按鈕,所有步驟都將由Eclipse執行。
在掌握了這些基本步驟之后,您可以開始探索Leiningen的其他用途,例如構建項目以進行分發/部署。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.