Использование Boot-clj REPL для загрузки функций Clojurescript в проекте Castra/Hoplon
У меня немного проблемы с boot-clj nREPL. Я подключаюсь с помощью cider-jack-in в EMACS, а затем вверху отображается правильный порт, а внизу - "boot.user=>", но у меня возникают проблемы с загрузкой функций cljs из "../rpc.cljs". страница. Короче говоря, я понятия не имею, как добраться до этого места. Я устал от '(загрузить "...")', но я даже не могу понять текущий рабочий каталог. Я не мог найти учебник по использованию загрузочного REPL нигде. Я пробовал это из командной строки с помощью "boot repl", а затем загружал с "(def p (future (boot (dev))))", но все еще полностью потерян.
Короче говоря, может ли кто-нибудь помочь направить меня в правильном направлении? Я ищу, как изменить текущий каталог, найти текущий рабочий каталог и загрузить функции из файла.cljs.
::: РЕДАКТИРОВАТЬ::: Я нашел boot-cljs-repl и попытался подключить это. В шаблоне Hoplon/Castra он уже включен в файл build.boot, но, следуя указаниям на GitHub, все равно не работает. Чтобы подключить его к проекту, добавьте ниже в файл "build.boot", вторая часть для задачи загрузки "Dev"
(require
'[adzerk.boot-cljs-repl :refer [cljs-repl cljs-repl-env start-repl]]"
...
...
(reload)
(cljs-repl-env)
(cljs)))
...
И затем вы сможете использовать cider-jack-in для загрузки CLJS repl с помощью команд "(def r (future (boot (dev))))", за которыми следует (start-repl), но всякий раз, когда я запускаю эту программу, есть ошибка. Я пробовал cider-jack-in-clojurescript и предыдущий, но, похоже, при подключении CLJS repl произошла ошибка.
boot.user> << started Weasel server on ws://127.0.0.1:38456 >>
<< waiting for client to connect ...
java.lang.NullPointerException
at clojure.java.io$make_parents.invokeStatic(io.clj:443)
at clojure.java.io$make_parents.doInvoke(io.clj:438)
Я буду продолжать пробовать разные подходы, но пока что застрял.
:::РЕДАКТИРОВАТЬ:::
Я выяснил проблему еще больше, если вы используете "(cljs-repl)" вместо "(cljs-repl-env)", чем вы можете соединиться с "cider-connect" после запуска "boot dev" в bash, и затем вы набираете '(start-repl)' в реплере cider, и он запускает реплан CLJS. Проблема, с которой я сейчас сталкиваюсь, заключается в том, что если я попытаюсь использовать REPL, как Clojure REPL, это не совсем работает. Если вы нажмете Cc, то Cc cider просто скажет, если находится в файле.cljs, что ему нужен REPL Clojurescript, даже если он есть.
Ура,