Что не так с моим простым скриптом класса Clojure?
Я пытаюсь научиться пользоваться gen-class
в Clojure. Я начал с этого простого скрипта:
(gen-class :name MyClass :prefix MyClass-)
(defn MyClass-toString[this] "This Is My Class")
(println (MyClass.))
Когда я пытаюсь запустить его, я получаю
Exception in thread "main" java.lang.IllegalArgumentException: Unable to resolve classname: MyClass
Что я делаю неправильно?
2 ответа
Решение
Кроме того, проверьте, что имя основного класса совпадает с именем, определенным в файле проекта lein.
Обычно вы помещаете в (ns) заголовок файла clj.
(ns my.namespace
(:gen-class))
Вот несколько примеров
(gen-class
:name "some.package.RefMap"
:implements [java.util.Map]
:state "state"
:init "init"
:constructors {[] []}
:prefix "ref-map-")