Без какого-либо инструмента вы обязаны сделать несколько необычных шагов вручную. Скажем, у вас есть clojure.jar
в текущем каталоге, вместе с целевой папкой для компиляции с именем classes
и исходным файлом clojure в src/awesome.clj
со следующим кодом:
(ns awesome)
(defn life-universe-and-everything []
(println "42"))
Чтобы скомпилировать его, в командной строке введите следующие команды:
РЕДАКТИРОВАТЬ: использовать точку с запятой вместо двоеточия для разделения элементов пути к классам в средах Windows
java -cp clojure.jar;classes;src clojure.main
Clojure 1.3.0
user=> (compile 'awesome)
Это сгенерирует скомпилированные классы в папку classes
. Обратите внимание, что если ваш код зависит от какой-либо библиотеки, вам нужно адаптировать значения параметра -cp
при запуске JVM.
Чем вы создадите файл JAR, используя:
jar cvf awesome.jar -C classes .
Наконец, для вызова вашей функции:
java -cp clojure.jar;awesome.jar clojure.main -e "(use 'awesome) (life-universe-and-everything)"
Я бы также посоветовал вам прочитать официальную документацию .