我知道clojure/java interop的基础知识:从clojure调用java,反之亦然.但是,我无法将clojure中的类型集合返回到java.我试图List<TypedObject>从调用clojure的java代码中看到这种性质的东西.
Java Object:
public class TypedObject {
private OtherType1 _prop1;
public OtherType1 getProp1() {
return _prop1;
}
public void setProp1(OtherType1 prop1) {
_prop1 = prop1;
}
}
CLojure method:
(defn -createListOfTypedObjects
"Creates and returns a list of TypedObjects"
[input]
;Do work here to create and return list of TypedObjects
[typedObj1, typedObj2, typedObj3])
(:gen-class
:name some.namespace
:methods [createListofTypedObjects[String] ????])
Run Code Online (Sandbox Code Playgroud)
让我们考虑一下,我正在使用clojure编写一个API,它将作为jar文件分发,以便在java中使用.我的问题是如何通过代替???? 上面的问题标记在:AOT的gen类中,所以程序员使用我的api在java中编写一段代码,可以createListofTypedObjects() returns List<TypedObject>从eclipse中获得相应的intellisense/code completion(即:) .
我正在尝试使用一体化解决方案将compojure应用程序与LinkedIn,Facebook,Google和Twitter集成在一起.我知道一些现有的java库,例如scribe-java或spring-social可以提供帮助.但是当他们使用clojure时他们很糟糕.我的目标是否有更多适合他们的解决方案?或者,是否有人可以向我指出如何实现目标的工作样本/教程?