首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于如何将Clojure集成到springboot框架中

关于如何将Clojure集成到springboot框架中
EN

Stack Overflow用户
提问于 2019-04-21 11:10:58
回答 1查看 435关注 0票数 0

我目前正在尝试将clojure集成到gradle springboot项目中,尽管它工作正常,但在RT.loadClassForName("au.edu.uq.core");之前,我确实必须使用Clojure.var才能访问该函数,如果我对RT.loadClassForName("au.edu.uq.core");进行注释,就会出现如下错误:

线程"main“java.lang.IllegalStateException中的异常:试图调用未绑定的fn:#'au.edu.uq.core/hello-from-clojure。

但在build.gradle中,我已经包括了classes.dependsOn compileClojure

有build.gradle、主Java和clojure命名空间的屏幕截图。这是一个小小的演示项目,让我学习gradle,有什么建议可以让这个构建过程更优雅吗?

启动脚本是./gradlew bootRun./gradlew run

//这是Java主类

//这是clojure名称空间

//这是build.gradle

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-21 23:11:46

从主类的截图中可以看出,您似乎正在使用Clojure.lang.RT加载您的函数,而官方参考文件则提出了不同的建议:

clojure.core中的函数自动加载。其他名称空间可以通过require加载: IFn require = Clojure.var("clojure.core","require");require.invoke(Clojure.read("clojure.set"));

我的建议是尝试如下:

代码语言:javascript
复制
IFn require = Clojure.var("clojure.core", "require");
require.invoke(Clojure.read("au.edu.uq.core"));
IFn helloFunction = Clojure.var("au.edu.uq.core", "hello-from-clojure");
helloFunction.invoke();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55782195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档