Wciąż jestem całkiem nowy w Clojure, więc przepraszam, jeśli jest to całkowicie nowe pytanie, ale nie byłem w stanie znaleźć wystarczającej odpowiedzi online.Jak mogę odwoływać się do funkcji w innych plikach z leiningen?
Zasadniczo mój problem jest to, że za każdym razem próbuję uruchomić mój projekt, pojawia się błąd jak:
Exception in thread "main" java.lang.RuntimeException: java.io.FileNotFoundException: Could not locate greeter__init.class or greeter.clj on classpath:
W tym przypadku greeter.clj jest w projekcie w tym samym katalogu co plik zawierające moją główną funkcję.
Dla celów ilustracyjnych, jakie stworzył projekt, który ma drzewo katalogów takiego:
Mój kod core.clj jest następująca:
(ns omg.core
(require [greeter]))
(defn -main[] (greet))
mojego kodu for greeter.clj to:
(ns greeter)
(defn greet [] println("Hello world"))
Zawsze gdy piszę lein run -m omg.core
Otrzymuję wyjątek wspomniany powyżej. Co ja robię źle?
Arthur, dzięki bardzo za odpowiedź i swojej wyjaśnienia. Bardzo to doceniam. Zrobiłem to działając, usuwając wymaganie i dodając (użyj omg.greeter) w jego miejsce. –