我发现了两种将 Clojure *.clj 文件编译为 *.class 文件的方法,虽然它们都有效,但我对它们都有一些抱怨。
The 第一使用 REPL,因此无法自动化(或者可以吗?)
The 第二个 uses lein。坦率地说,我不明白为什么我应该使用依赖管理工具来处理应该成为该语言核心工具链一部分的东西。但无论如何,使用lein soon 强制您使用本地 Maven 存储库如果您的 Clojure 代码需要访问本地 jar(这很有可能)。
是否有更好的方法从 Clojure 代码生成 *.class 或 *.jar 文件,仅涉及核心 Clojure 工具并且可以以脚本化、非交互式方式使用?
Clojure 提供clojure.core.Compile
,可用于从命令行编译 Clojure 代码。
java -Dclojure.compile.path=<targetdir> -cp <targetdir>;clojure.jar <list of namespaces>
有关如何从 ant 使用此功能的示例,请查看compile-clojure
Clojure 自己的 build.xml 文件中的任务。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)