java - 使用 Cake 与 Clojure 一起构建 Java

标签 java clojure

开始编辑: 主要是我希望我的 Clojure 程序使用 Java 类。

我还得到了一些关于从蛋糕回到 lein 的好建议,因为它们是 合并。

如果阅读本文的人能推荐一本更多关于设置 Java/Clojure 构建环境而不是学习 Java 的书,我将不胜感激。 结束编辑:

虽然我可以阅读Java代码,但我不是Java程序员。我正在使用 cake 成功构建 Clojure 主程序,并且需要创建一个 Java 类来成为我的 Clojure 主程序的一部分。我不知道如何将 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)构建说明是什么?

谢谢。

最佳答案

目前还不清楚你想做什么。我假设您想要编译 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”。

关于java - 使用 Cake 与 Clojure 一起构建 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8577701/

相关文章:

java - 短代码的 Python 到 Java 翻译

java - 数组访问被拒绝

java - Autowiring 类时出现空指针异常

string - 在 Clojure 中连接多个惰性字符串序列

java - 使用 pdfbox 旋转文本

java - 方法改变,然后返回接收到的参数;是好还是坏?

clojure - 可以接受原语和元数据的最简单的 Clojure 对象?

clojure cons vs conj with lazy-seq

java - 禁止在 Eclipse 中登录 clojure?

macros - 向宏添加可选参数