开始编辑: 主要是我希望我的Clojure程序使用Java类。
我从蛋糕回到lein也得到了一些很好的建议,因为他们是 合并。
如果有人读这篇文章可以推荐一本书来设置Java / Clojure构建环境,而不是学习Java,我将不胜感激。 结束编辑:
虽然我可以阅读Java代码,但我不是Java程序员。我正在使用cake成功构建Clojure主程序,并且需要创建一个Java类,它成为我的Clojure main的一部分。我无法弄清楚如何将MyClass.class合并到Clojure构建中。
首先是我的project.clj,然后是几行应用程序.clj文件。
(defproject ba1-app "0.0.1-SNAPSHOT"
:description "TODO: add summary of your project"
:dependencies [[org.clojure/clojure "1.2.1"]
[org.clojure/tools.cli "0.1.0"]]
:main ba2-app)
(ns ba2-app
(:gen-class)
(:use [clojure.string :only [split]]
[clojure.string :only [join]]))
(def^:dynamic avail-trans [\W \D])
(def^:dynamic acct-types [[\C 0.02][\S 0.04] [\M 0.06]])
.
.
.
1).java文件是否应该与.clj应用程序模块进入同一目录?
2)构建说明是什么?
感谢。
答案 0 :(得分:2)
目前还不清楚你想做什么。我假设您要编译java类并在clojure源中使用。在这种情况下,您不必做一些特殊的事情。将您的java类放在您想要的位置(例如,dir'/ project_dir / src')并添加
:java-source-path "src"
到您的project.clj
文件。在这种情况下,java类将与clojure文件一起编译,它们的包层次结构根将从您选择的此目录开始。您现在可以使用这些类,就像您使用:import
形式中的任何其他类(ns ...)
子句或直接使用(import ...)
一样。
UPD。还可以提到的是,您可以自由地将您的java源目录与您的clojure源混合,这样您就可以将project.clj
个选项:source-path
和:java-source-part
设置为相同的值,“src”in这个例子。