当前位置: 首页 > 知识库问答 >
问题:

Java Clojure同步开发:没有Leiningen的苹果酒?

上官德寿
2023-03-14

场景是这样的:我正在为一个需要Java解决方案的类做一个项目:特别是,关键函数接收一个人工智能问题,并返回一个答案字符串。我想要的方法是接收问题,然后将其发送到解决问题的Clojure函数,并将解决方案String返回给键函数,键函数反过来提交它。

我的问题是关于工作流程的。作为一个狂热的emacs用户(尽管对Clojure来说是新手),我想获得使用苹果酒的好处。然而,由于Clojure和该项目的Java部分都在开发中,在莱宁根开始一个新项目似乎不可行或没有必要。目前,我已经在Java中构建了一个类,该类在调用时处理AI问题到Clojure,然后我从命令行(非苹果酒)启动REPL并开始处理它,将进度保存在. clj中。一旦我有了这样的人工智能求解器,我计划戒掉自定义问题经销商类(在最终提交中无效),简单地将问题从关键Java函数传递到主要Clojure函数并获得答案弦回来。

我的最终提交文件必须包括: KeyFunction.java

我的最终提交文件还可以包括:myClojureFile(JAR或其他Java可调用格式)

那么,当我的“项目”在最终提交方面Java时,我如何才能在获得苹果酒(它的说明总是包括莱宁根项目)的好处的同时做到这一点呢?

共有1个答案

雍飞雨
2023-03-14

您可以运行由clojure.tools.nrepl提供的nrepl服务器,并通过cider连接到此服务器。您还需要使用您的cider版本期望的任何nrepl中间件。由于您没有使用lein,您需要通过maven配置依赖项,或者在本地安装它及其所有依赖项(以及您的cider版本预期的中间件)。

但到目前为止,更好的解决方案是只使用leiningen,这简化了设置。

leinengen项目可以同时包含Clojure和Java代码。如本教程所述,lein将编译Java代码,然后编译Clojure代码。

如果您有任何Java要在:Java源路径或:aot中列出的Clojure名称空间中编译,则它们将始终在Leiningen通过任何run、repl等调用运行任何其他代码之前编译。

 类似资料:
  • 我试图在没有Clojure项目的情况下从emacs执行“苹果酒杰克”,我只是想运行Clojure REPL。但我发现苹果酒正试图运行,而不是,它没有引用我的。当我尝试Clojure项目时,它通常与一起工作。 我想知道这有什么原因,即使当我在码头没有Clojure项目的情况下尝试时也没有问题,我希望苹果酒可以做到这一点,并且有一种方法可以在没有Clojure项目的情况下通过苹果酒运行Leininge

  • Service Dao Cache Log日志类 FileCache文件缓存类

  • Cache redis-cluster集群配置. 修改congif/{env}/database.php中的redis选项 将cluster设为true,表示使用集群模式 设置option参数 配置集群服务列表即可 重启服务即可,此时redis已切换为集群模式 'redis' => [ //集群模式只在service下使用有效,异步redis中并不适用 'cluster

  • Dao 框架内部会做断线重连,失败3次后将进行重连操作 文档参考:Doctrine DBAL’s documentation $this->getDefault() 获取默认服务器连接,返回\Doctrine\DBAL\Connection对象 $this->getRead($name = null) 获取读服务器连接,若name不填,随机读取。 $this->getWrite($name = n

  • Service服务 Service服务是配合服务中心来实现服务化的。每个服务可以单独启动一个server,处理请求。 在开发Service模块时候,同样要注意内存释放问题。并且不可以使用异步服务,此模块是以同步方式执行的。 所以说,你可以用传统的方式来编写服务接口,当然你也可以使用内置的一些异步task方法来实现map-reduce,提升接口吞吐。 1.开启服务如执行 app/service us

  • 我做了一个项目命名为我的东西,并添加到project.clj所以它看起来像这样 所以我可以运行核心,但是当我试图运行lein运行时,我得到了这个 即使核心确实存在于源中。 我该怎么办?