gpt4 book ai didi

clojure - 将本地 Java 类导入 Clojure

转载 作者:行者123 更新时间:2023-12-02 10:27:43 25 4
gpt4 key购买 nike

我了解在 clojure 中导入 Java 类的总体思路,如下所示:

(import 'a.random.Class)

但是,假设我有一个文件 Example.java ,其中包含我想要使用的“Example”类,那么如何导入这样的内容呢?

如果这个相当菜鸟的问题已经得到解答,我深表歉意,我一直在四处寻找,但在发布之前什么也没发现,并提前感谢任何可以提供一些线索的人。

最佳答案

为了能够使用 Example.java 中定义的类,您必须对其进行编译并将生成的类文件放置在类路径中。

如果此 Java 文件是 Clojure 项目中的帮助程序,您可以使用 Leiningen 来自动化该过程:

(defproject foo "1.2.3-SNAPSHOT"
; ...
:java-source-paths ["src/main/java"]
)

假设 Example.java 位于 src/main/java 的子目录中,当您使用它启动 REPL 时,Leiningen 将编译它并将其包含在类路径中或者准备一个你的项目的jar。 (还有 :javac-options 用于指定要作为字符串向量传递给 Java 编译器的选项。)

如果您的 Java 源代码树更广泛并且独立于项目的 Clojure 端,那么将其打包为单独的 Java 项目可能更有意义。然后,Clojure 端将使用 Java 项目作为依赖项。

关于clojure - 将本地 Java 类导入 Clojure,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20851047/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com