Heim >Java >javaLernprogramm >Wie kann ich Clojure-Funktionen erfolgreich aus Java aufrufen?

Wie kann ich Clojure-Funktionen erfolgreich aus Java aufrufen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-14 20:50:24628Durchsuche

How Can I Successfully Call Clojure Functions from Java?

Clojure aus Java aufrufen

. Einführung.

Der Aufruf von Clojure aus Java kann schwierig sein, da die meisten Google-Vorschläge veraltet sind. Dieser Artikel enthält klare Schritte für diesen Aufruf, vorausgesetzt, Sie haben ein JAR aus einem Clojure-Projekt erstellt und es dem Klassenpfad hinzugefügt.

. Clojure aufrufen.

Um Clojure erfolgreich aus Java aufzurufen, führen Sie die folgenden Schritte aus:

  1. Deklarieren Sie den Namespace mit :gen-class zum Erstellen eines Java Klasse und :Methoden zum Angeben von Methoden, die von Java aufgerufen werden können.
  2. Erstellen Sie einen Wrapper Funktion (-binomial in diesem Beispiel), die von Java aufgerufen werden kann.
  3. Das Clojure-JAR in den Klassenpfad aufnehmen.

. Aktualisiertes Beispiel.

Clojure-Teil:

(ns com.domain.tiny
  (:gen-class
    :name com.domain.tiny
    :methods [#^{:static true} [binomial [int int] double]]))

(defn binomial
  "Calculate the binomial coefficient."
  [n k]
  ...)

(defn -binomial
  "A Java-callable wrapper around the 'binomial' function."
  [n k]
  (binomial n k))

Java-Teil:

import com.domain.tiny;

public class Main {

    public static void main(String[] args) {
        System.out.println("(binomial 5 3): " + tiny.binomial(5, 3));
        System.out.println("(binomial 10042, 111): " + tiny.binomial(10042, 111));
    }
}

Das obige ist der detaillierte Inhalt vonWie kann ich Clojure-Funktionen erfolgreich aus Java aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn