2012-06-13 15 views
2

最後,我想下面的工作如何讓cloaure可見的java庫?

(ns grizzler.core 
    (:import (com.sun.grizzly.http.embed GrizzlyWebServer) 
      (com.sun.grizzly.tcp.http11 GrizzlyAdapter))) 

但是,我不知道如何去這一點。我是否將東西添加到我的類路徑中?我在哪裏修改我的類路徑,在我的.bashrc或clojure?

我在http://grizzly.java.net/找到灰熊項目。但我要下載什麼?我如何安裝東西?我真的不知道該怎麼做。

相關:Using 3rd party java libraries, like com.jcraft.jsch, with clojure - 除了它的不夠詳細,我:(

編輯:我也試過在project.clj以下和沒有工作:

(defproject grizzler "1.0.0-SNAPSHOT" 
    :description "FIXME: write description" 
    :dependencies [[org.clojure/clojure "1.3.0"] 
       [com.sun.grizzly.http.core "2.1.10"] 
       [com.sun.grizzly.http.embed "2.1.10"] 
       [com.sun.grizzly.tcp.http11 "2.1.10"]]) 

在此外,我想net.java.grizzly.http.core,而且沒有任何工作。

謝謝!

回答

4

銅在「正確」的方式做到這一點rrent共識基本上是「使用leiningen」。 Leiningen基本上是Maven的一個包裝,並使用maven倉庫。大多數情況下,您可以在某個地方的Maven存儲庫中找到所需的代碼,但最終您會遇到需要使用jar文件的情況。在這種情況下,您將jar文件安裝到您的本地maven存儲庫中,該文件位於您的主目錄中,幷包含構建所有項目所需的所有jar的副本。如果您所依賴的罐子可以從中央倉庫獲得,則此本地倉庫可用作緩存,因此您無需每次都下載它們,但如果罐子不能自動下載,則可手動將罐子放入本地倉庫他們。

我建議先看這個video

  • 仔細檢查,看看是否你需要的庫已經可以
  • 下載你想要
  • download leiningen
  • 運行lein new nameOfYourProject
  • 將它添加到您的leiningen項目project.clj
  • 運行lein deps罐子
    • 這將打印第E對於安裝JAR文件到本地Maven回購
    • 運行此命令(如印刷由leiningen)和JAR文件完整的命令應該在〜/ .m2目錄/ ......被複制到正確的位置
    • 運行lein deps再次,以確保它發現它
  • 在.clj文件中添加一個import語句(如你有以上)
  • 成功!

調試此過程可能非常具體,但#clojure居民通常相當有幫助。

+0

灰熊在maven central上可用 - http://grizzly.java。net/nonav/docs/docbkx2.2/html/dependencies.html - 因此您可以在project.clj中指定依賴項,Leiningen應該能夠找到它。 –

+0

編輯添加,在列表的頂部:) –

+0

謝謝肖恩 - 我試過,但我不認爲我指定正確的包。我在上面的編輯中包含了詳細信息。 – higginbotham

相關問題