Embedding swank-clojure in java program

亡梦爱人 提交于 2019-12-03 07:34:26

Would it be acceptable to you to implement the Embed class in Clojure? You could do that with gen-class (see Meikel Brandmeyer's tutorial for details) and AOT compilation.

The code could go something like

(ns your-app.Embed
  (:require [swank.swank :as swank])
  (:gen-class
   :methods [[startSwank [] void]]))

(defn -startSwank []
  (swank/start-repl))

(add anything else you require); then in the Java part of your application, you could import your Clojure-prepared class, instantiate it and call .startSwank() on the instance.

Not sure about programmatically stopping Swank... I'd be curious to know of a good way to do that myself. (And I'll be back with an update if I figure it out; otherwise, I'd love to read somebody else's answer detailing how to go about that.)

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!