2010-12-10 166 views
2

我在Clojure的:gen-class :main true名稱空間中定義了-main函數。我試圖從REPL測試它。從REPL測試Clojure main

main功能如下:

(defn -main [& args] 
    ; ... 
) 

,我試圖用(ns/-main "-x" "foo")(ns/-main "-x foo")(ns/-main ["-x" "foo"])(ns/-main (into-array String ["-x" "foo"])等來調用它,所有給我的各種錯誤。

如何從REPL中調用該函數並傳遞一些命令行參數來測試它?

感謝。

回答

5

我試圖重現:

(defn -main [& args] 
    (apply str args) 
) 

然後叫這樣的:

(-main "a" "b" "c") 

它評價爲:

"abc" 

,因爲它應該..

要一定要檢查你是美國納克正確的命名空間標識,還看什麼奇怪的是你的-main函數內部發生的事情,就像使用一個字符串作爲一個數..

而且,它不會傷害看到這是你的錯誤信息..

+1

問題是DUE(愚蠢的用戶錯誤)。現在正在工作。謝謝。 – Ralph 2010-12-10 22:00:13

+1

@Ralf:在那裏......完成了.. :) – 2010-12-10 22:05:01