जैसा कि पहले से ही उल्लेख किया गया है, आप प्री-संकलन के माध्यम से ग्रोवी से क्लोजर कक्षाओं तक पहुंच सकते हैं।
आप जावा 6 की स्क्रिप्टिंग एपीआई के माध्यम से सबसे लोकप्रिय स्क्रिप्टिंग भाषाओं तक पहुंच सकते हैं, हालांकि स्कैला और क्लोजर को आधिकारिक तौर पर समर्थित नहीं लगता है। यहाँ ग्रूवी से उदाहरण हैं:
http://groovy.codehaus.org/JSR-223+access+to+other+JVM+languages
तुम भी ग्रूवी, उदा से Clojure की कक्षाओं के लिए उपयोग कर सकते हैं (ग्रूवी 1.7 स्नैपशॉट के लिए):
@Grab(group='org.clojure', module='clojure', version='1.0.0')
import clojure.lang.*
def ss = StringSeq.create('The quick brown fox')
def done = false
while (!done) {
println ss.first()
ss = ss.next()
done = !ss
}
या एक नई प्रक्रिया (फिर ग्रूवी 1.7 स्नैपशॉट के लिए) बनाने के माध्यम से बातचीत:
@Grab(group='org.clojure', module='clojure', version='1.0.0')
import clojure.lang.Script
def src = new File('temp.clj')
src.text = '''
(defn factorial [n]
(if (< n 2)
1
(* n (factorial (- n 1)))))
(println (factorial 4))
'''
def path = System.getProperty('user.home') + '/.groovy/grapes/org.clojure/clojure/jars/clojure-1.0.0.jar'
new AntBuilder().with {
java(classname:Script.name, classpath:path) {
arg(value:src.path)
}
}
भी Grails जो निष्पादित करने के लिए आसान पहुँच प्रदान करता लिए एक Clojure प्लगइन नहीं है किसी भी Grails विरूपण साक्ष्य से clojure कोड (नियंत्रकों, taglibs, सेवाओं आदि ...):
http:// grails.org/plugin/clojure
स्रोत
2009-07-28 00:47:12
यह भी Clojure उत्पन्न जावा कोड और इसके विपरीत में कक्षाओं का उपयोग करना संभव है: इसलिए पूरे Clojure <-> जावा <-> ग्रूवी पथ – mikera