Heim >Java >javaLernprogramm >Wie rufe ich Clojure-Funktionen aus Java auf, ohne die RT-Kompilierung zu verwenden?
Interoperabilität mit Clojure aus Java ohne RT-Kompilierung
Trotz veralteter Empfehlungen zur Verwendung der Klasse clojure.lang.RT für Clojure-to-Java Aufgrund der Interoperabilität erfordern aktuelle Ansätze diese Methode nicht mehr. Bei dieser verbesserten Methode wird Clojure-Code in ein eigenständiges JAR kompiliert und direkt aus Java aufgerufen. Hier ist eine Schritt-für-Schritt-Anleitung:
Clojure-Code kompilieren:
Zugriff auf Clojure-Funktionen aus Java:
Beispiel für Clojure-Code:
(ns com.example.clojure) (defn binomial [n k] (let [a (inc n)] (loop [b 1 c 1] (if (> b k) c (recur (inc b) (* (/ (- a b) b) c))))))
Beispiel Java-Code:
import com.example.clojure; public class JavaCaller { public static void main(String[] args) { System.out.println("(binomial 5 3): " + clojure.binomial(5, 3)); System.out.println("(binomial 10042, 111): " + clojure.binomial(10042, 111)); } }
Java-Programm ausführen:
Dieser Ansatz ermöglicht eine nahtlose Interoperabilität zwischen Clojure und Java, wodurch Zwischenschritte oder komplexe Kompilierungsverfahren überflüssig werden.
Das obige ist der detaillierte Inhalt vonWie rufe ich Clojure-Funktionen aus Java auf, ohne die RT-Kompilierung zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!