为了账号安全,请及时绑定邮箱和手机立即绑定

从java调用Clojure

从java调用Clojure

慕姐8265434 2019-07-10 09:55:59
从java调用Clojure大多数google的热门点击“从java调用Clojure”已经过时,建议使用clojure.lang.RT若要编译源代码,请执行以下操作。如果您已经从Clojure项目中构建了一个JAR并将其包含在类路径中,那么您能帮助清楚地解释如何从Java调用Clojure吗?
查看完整描述

3 回答

?
慕的地6264312

TA贡献1817条经验 获得超6个赞

从Java调用什么类型的代码?如果用gen类生成类,那么只需调用它。如果要从脚本调用函数,请查看以下示例.

如果要在Java中从字符串中计算代码,则可以使用以下代码:

import clojure.lang.RT;import clojure.lang.Var;import clojure.lang.Compiler;import java.io.StringReader;public class Foo {
  public static void main(String[] args) throws Exception {
    // Load the Clojure script -- as a side effect this initializes the runtime.
    String str = "(ns user) (defn foo [a b]   (str a \" \" b))";

    //RT.loadResourceScript("foo.clj");
    Compiler.load(new StringReader(str));

    // Get a reference to the foo function.
    Var foo = RT.var("user", "foo");

    // Call it!
    Object result = foo.invoke("Hi", "there");
    System.out.println(result);
  }}


查看完整回答
反对 回复 2019-07-10
  • 3 回答
  • 0 关注
  • 734 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信