Когда проект ClojureScript зависит от кода ClojureScript в библиотеке, он напрямую зависит от исходного кода библиотеки ClojureScript.(Нет необходимости компилировать код этой библиотеки в JavaScript для целей зависимости, и на самом деле эта модель на самом деле не поддерживается.)
Как проект ClojureScript зависит от кода библиотеки ClojureScript?Обычно код библиотеки помещается в JAR, и этот JAR помещается в путь к классам Java проекта.(Часто такие JAR развертываются в Clojars или Maven central.)
Более новая, более гибкая альтернатива, использующая deps.edn
, заключается в том, чтобы проект ClojureScript зависел либо от JAR (как описанов предыдущем абзаце), или напрямую зависеть от локального пути библиотеки на диске (используя :local/root
) или источника библиотеки GitHub (используя :git/url
и :sha
).
Чтобы скомпилировать и протестировать вашКод локально вы можете использовать cljs.main
, чтобы загрузить код в REPL и использовать его.Часто это может быть так же просто, как настроить deps.edn
, а затем запустить
clj -m cljs.main
с последующим использованием (require my-ns.core)
для загрузки пространства имен в REPL. Руководство *1021* Quick Start
очень стоит прочитать по этому поводу. Вы можете использовать cljs.main
для запуска тестов на основе cljs.test
.Пример выполнения такого теста с использованием Node: здесь .
Существуют другие, более сложные и многофункциональные опции для компиляции и тестирования кода библиотеки ClojureScript;Выше приведены некоторые из более простых опций, которые поставляются с самим ClojureScript.