9

IntelliJで動作するメイン関数を次のように定義する方法に関する非常に基本的なアドバイスが必要です。

(ns clojure.examples.hello
    (:gen-class))

(defn -main
  [greetee]
  (println (str "Hello " greetee "!")))

プロジェクトを作成し、前のコードをソースファイルに貼り付け、実行構成を設定すると(スクリプトパス、モジュール、作業開発、および「REPLでスクリプトを実行」を選択)、:java.lang.Exception: Unable to resolve symbol: -main in this context (NO_SOURCE_FILE:1)"実行するたびに取得します(-main "Some Greeting")。どんなアドバイスも役に立ちます。

4

1 に答える 1

6

La ClojureのREPLは名前空間から始まると思いuserます(ほとんどの場合-すべて?-ClojureのREPLはそうです)。プロジェクトの名前空間に切り替える(in-ns 'clojure.examples.hello)(use 'clojure.examples.hello)、そこで定義された関数を呼び出す必要があります。さらに良いことに、(require '[clojure.examples.hello :as hello])それらをと呼びます(hello/-main "IDEA")

于 2010-07-12T00:21:51.640 に答える