Порядок компиляции Leiningen?

я только учусьlein, и я'я хотел бы использовать из источника Java класс, созданныйdeftype в Clojure источнике. Это не былот в базовом уроке, и я не могузаставить его работать должным образом.

Проблема в том, что источник Java можетимпортировать класс Clojure, так как он нееще не скомпилировано. И Clojure класс неt скомпилирован, поскольку компиляция прерывается исходным кодом Java.

Я приведу минимальный пример:

Создайте новый проект с:

lein new app javafoo

добавить вproject.clj

:aot :all
:java-source-paths ["src/java"]

Положить в:src/javafoo/core.clj

(ns javafoo.core)
(deftype PPoint [x y])

Положить в:src/java/JavaFoo.java

package foo.java;
import javafoo.core.PPoint;

public class JavaFoo {
    public static void main(String[] args) {
        System.out.println("JavaFoo");
    }
}

Попробуй скомпилировать

lein compile

Это не сpackage javafoo.core doesn't exist, Так что теперь я должен

Закомментируйте:java-source-pathsкомпилироватьРаскоментируйте:java-source-pathsкомпилировать

Это наконец работает. Есть ли способ заставить его работать с самого начала?

Ответы на вопрос(1)

Ваш ответ на вопрос