У меня есть функция Clojure, которая возвращает LazySeq. Когда я запускаю эту функцию из REPL, она работает просто отлично. Однако, если я попытаюсь вызвать ту же функцию из кода Java, как это:
Object result = com.acme.forecast.core.runforecast("file1.csv", "file2.txt");
Я получаю следующее исключение:
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException:
clojure.lang.LazySeq cannot be cast to java.lang.Number
at com.acme.forecast.core.runforecast(Unknown Source)
at com.acme.forecast.client.gui.ClientGUI.actionPerformed(ClientGUI.java:180)
Мой класс говорит, что я возвращаю LazySeq, а не номер:
(:gen-class
:name com.acme.forecast.core
:methods [#^{:static true} [runforecast [String String] clojure.lang.LazySeq]])
Что здесь не так?