Как организовать, протестировать, документировать и упаковать проект Clojure

Я изучал несколько Clojure, и в настоящее время у меня есть единственный файл .clj, который я редактирую в текстовом редакторе и который я запускаю в командной строке.

Где я могу найти руководство по практическим аспектам масштабирования этого пакета для более крупных программ/библиотек?

  • Как выложить несколько файлов .clj в файловой системе?
  • Как мне организовать и выполнить тестовый код?
  • Как мне документировать программу/библиотеку?
  • Как его упаковать?

Я ищу информацию о практических аспектах, касающихся масштабирования от небольших скриптов до чего-то реального.

Ответ 1

Я рекомендую использовать leiningen. Запуск

$ lein new myproject

создаст новую папку с именем myproject внутри вашего текущего рабочего каталога со структурой скелета по умолчанию.

Внутри вновь созданной папки myproject вы найдете (среди прочего) папку с именем src для clojure исходного кода и папку с именем test для ваших тестов (leiningen будет генерировать тест с ошибкой по умолчанию).

Leiningen позволит вам запускать тесты с помощью lein test.

Вы можете упаковать свой проект в виде файла jar с помощью lein jar или создать uberjar (исполняемый банку со всеми необходимыми зависимостями) с lein uberjar.

Для создания документации я рекомендую autodoc, который прекрасно сочетается с leiningen.

Ответ 2

Если вы используете Netbeans, есть плагин Clojure, который может быть вам полезен.

Создание проекта Clojure с ним создает кучу папок: исходные пакеты, которые содержат пакет по умолчанию com.yourcompany, тестовые пакеты, библиотеки, который содержит .jar для Clojure и ссылку на JDK, и тестовые библиотеки, содержащие JUnit.

Ответ 3

Я использую комбо:

  • Intellij Idea с плагином La Clojure
  • Leiningen
  • Clojars
  • Midje, для тестирования/издевки
  • Git

Удачи!