Como posso configurar meu projeto.clj para que Leiningen encontre minhas fontes sob uma estrutura de diretório fora do padrão?
Pergunta
Parece o de Leiningen compilar Tarefa procura pacotes de origem para começar imediatamente em /src diretório. Eu uso Java e Clojure em meu projeto, então meu /src Diretório se parece com o seguinte:
/src/java/myapp
/src/clojure/myapp
No momento, Leiningen está procurando /src/myapp E está falhando durante o compilar.
Relacionado, eu gostaria de saber como adicionar manualmente diretórios ao caminho de classe para o de Leiningen compilar e repl tarefas. Por exemplo, enlutamente Deftemplate A função pesquisará o caminho de classe por um arquivo de modelo nomeado. Adicionando /modelos Para o caminho de classe seria necessário para que meu projeto construisse e execute corretamente.
Solução
Isto será fixo Em Leiningen 1.0, que atualmente está procurando um lançamento na próxima semana. Espero que alguém escreve um plugin Javac para Leiningen também; Deve ser fácil escrever como Lein Bundles Ant, para que você possa reutilizar a tarefa JAVAC da Ant.
Outras dicas
Você já tentou definir o :root
valor no seu arquivo de projeto?
Olhando para o código -fonte do comando compilador, ele processará apenas arquivos clojure de qualquer maneira e procurará esses arquivos em (file (:root project) "src")
, então você pode definir :root
para apontar para "src/clojure/", mas ainda precisaria de um link simbólico para que exista "src/clojure/src/" ...