Как использовать проект Java в затмении из проекта Clojure

1

У меня есть существующая база кода Java. Он состоит из нескольких проектов в eclipse. Эти проекты, как правило, требуют друг друга. Например:

 Project A -> Common Lib 1 -> 2nd level dependency 1
           |
           -> Common Lib 2

Чтобы использовать код из других проектов, я могу перейти на вкладку "Проекты" на вкладке "Путь" и нажать "Добавить",

Есть ли что-то подобное, что можно сделать для кода clojure (в eclipse), чтобы я мог легко начать использовать код из моих существующих Java-проектов в clojure?

  • 0
    Желаете ли вы вызвать некоторый код, написанный на Java из clojure, или код вызова, написанный на clojure из Java? (или оба?)
  • 0
    Вызовите существующую базу Java-кода из Clojure.
Теги:
clojure
leiningen
counterclockwise

1 ответ

0

Возьмите новое рабочее пространство.

Создайте Java-проект java-project с простым классом.

package com.pete23;

public class Counter {
    private int i = 0;
    public int next() {
        return i++;
    }
}

Создайте проект clojure проекта Clojure против часовой стрелки с простым core.clj.

(ns clojure-project.core
  (:import com.pete23.Counter))

(def counter (Counter.))

(println "java " (.next counter))
(println "java " (.next counter))

Выберите clojure-project. Свойства → Путь сборки Java → Проекты. Добавьте java-проект.

Начните новый REPL (путь к классу не является горячим обновлением!). И вуаля...

java 0
java 1
  • 0
    Я действительно ценю эти пошаговые инструкции, однако, когда я начинаю новый REPL, я получаю ;; Clojure 1.5.1 #<Namespace clojure-project.core> ClassNotFoundException com.pete23.Counter java.net.URLClassLoader$1.run (:-1) Что-то конкретно нужно сделать для свежего REPL? Я попытался закрыть процесс, а также перезапустить затмение ..

Ещё вопросы

Сообщество Overcoder
Наверх
Меню