Вопросы по теме 'clojure-java-interop'

Clojure Java Interop - ссылка на поле не может быть разрешена
Я работаю над проектом clojure, в котором я хочу создать класс на Java, а затем создать экземпляр этого класса и вызвать метод из моего кода clojure. Мой код Java находится в ресурсах / MyClass.java public class MyClass { public static...
1093 просмотров

Факторный код Clojure, устанавливающий множество различных полей в объекте Java с использованием карты параметров, привязанной к переменной или локальному
Я хотел бы установить группу полей в объекте Java из Clojure без использования отражения во время выполнения. Это решение (скопировано с одного решений) близок к тому, что мне нужно: (defmacro set-all! [obj m] `(do ~@(map (fn [e] `(set!...
113 просмотров
schedule 23.09.2021

Clojure: работа с java.util.HashMap в идиоматической манере Clojure
У меня есть объект java.util.HashMap m (возвращаемое значение из вызова кода Java), и я хочу получить новую карту с дополнительной парой ключ-значение. Если бы m была картой Clojure, я мог бы использовать: (assoc m "key" "value") Но...
15022 просмотров

Варианты создания классов Java в Clojure
Существует несколько различных способов создания классов Java в Clojure, так каковы компромиссы при выборе между gen-class ? , proxy и reify в Clojure? (есть ли другие способы создания классов Java, которые я не перечислил?) Мое...
2715 просмотров
schedule 20.03.2022

Clojure: nth не поддерживается для этого типа: Boolean"
Я пытаюсь реализовать пример обедающего философа в clojure. По некоторым причинам моя программа всегда умирает с исключением, говорящим «java.lang.UnsupportedOperationException: nth не поддерживается для этого типа: логическое значение» Я...
661 просмотров
schedule 31.03.2022

Время для потока управления в Clojure — подводные камни ScheduledThreadPoolExecutor?
Я изучаю параллелизм в Clojure. Я столкнулся с претензией (от Стюарта Серры?) на странице http://dev.clojure.org/display/design/Scheduled+Events с указанием: Функции Clojure не могут использовать время для потока управления без...
455 просмотров

Clojure: возможно ли наследовать состояние класса, определенного с помощью: gen-class?
Я пытаюсь изучить некоторую библиотеку Java с Clojure в качестве рабочего языка. Библиотека (как обычно в Java) очень объектно-ориентирована и нуждается в иерархии классов в клиентском коде. Я определил класс, унаследованный от класса библиотеки, с...
151 просмотров

Как я могу избежать печати хэш-кода объекта при чтении файла EDN в объекты Java с помощью clojure
Я определил считыватель EDN для пользовательских тегов, который создает новый объект при появлении пользовательских тегов. Я использую edn/read-string для чтения данных EDN. (defn getXyz [str] (.getXyz (XyzBuilder.) str) ) (defn...
103 просмотров
schedule 07.06.2022

Clojure: вызов последовательности методов объекта Java
Я видел это где-то задокументировано, но я не могу вспомнить, где и как называлась функция: я ищу функцию/макрос, которая принимает объект (Java) в качестве аргумента, выполняет последовательность методов для этого объекта и возвращает его. Что-то...
77 просмотров
schedule 13.06.2022

Использование хэш-карт Java в Clojure
Я новичок в Clojure. Я пытаюсь использовать java-хэш-карту в clojure. Я передаю хэш-карту Java в Clojure. Карта: {0=Гоа, 1=Дели, 2=Мумбаи}. Когда я пытаюсь использовать функции clojure на этой карте, я не получаю ожидаемого результата. В отличие...
563 просмотров
schedule 18.06.2022

Расширение ассоциативной абстракции Clojure на типы библиотек Java
У меня есть приложение (на самом деле несколько), которое декодирует данные JSON на карте с помощью Jackson. Кажется, что данные находятся либо в Map, либо в ArrayList (в случае массивов JSON). Данные, поступающие в эти потоки, неструктурированы,...
96 просмотров
schedule 14.07.2022

Программа работает в репле но больше нигде?
Я подозреваю, что это может быть связано с java-interop, поскольку я вызываю много функций java в своем коде. Когда я запускаю следующее в своем REPL (через emacs), он работает точно так, как должен (def height 100) (def image...
115 просмотров
schedule 22.08.2022

Clojure: gen-class не работает в приложении Java
Это мой файл myns/junk.clj (ns myns.junk (:gen-class :name booklist.util :methods [[sq [int] int]])) (defn sq [x] (* x x)) Я запускаю lein ubserjar без проблем. Я импортировал сгенерированную банку в свое Java-приложение, а...
239 просмотров

Почему сейчас Clojure терпит неудачу с JNLP?
У меня есть приложение Java, которое используется некоторое время и использует встроенные сценарии Clojure для некоторых вычислений. Старые версии по-прежнему отлично работают с текущей JRE, но если я перейду к созданию новой версии (только изменения...
137 просмотров
schedule 05.10.2022

Импорт кода Java в Clojure — Буфер протокола
У меня есть JAR с классом Proto$Event.class (скомпилирован из Protocol Buffer). Теперь я хочу использовать его в проекте Clojure. Я включаю JAR в свой проект clojure, выполнив эти шаги . Но я не могу запустить этот код в clojure: (ns...
67 просмотров
schedule 07.12.2022

Доступ к полям, методам классов Java, которые не импортированы в Clojure
Я начинаю больше разбираться в взаимодействии Clojure-Java. Если я создаю класс Java в Clojure, мне нужно его импортировать, но если я просто использую поля или методы класса, мне не нужно его импортировать. Например: (ns students.Student...
170 просмотров
schedule 26.03.2023

Как aot-компилировать классы gen-класса с подсказками циклического типа?
В Clojure я использую gen-class с библиотекой Java. Программист обычно предоставляет два класса, которые реализуют интерфейс и расширяют класс соответственно. Предполагается, что два класса ссылаются друг на друга, и трудно избежать этой...
159 просмотров

Создание библиотеки протоколов и defrecords для использования из Java
На данный момент у меня есть полностью функциональная библиотека Clojure, которая вызывается из Java. То, как я это делаю: у меня есть файл, который использует gen-class для обертывания всего API как статических методов одного класса и передает...
571 просмотров

как перебрать список карт в clojure и объединить его в строку
У меня есть список карт с двумя ключами: путь и: размер listOfMaps ({:path "a " :size "1 "}{{:path "b " :size " 2"}...) как перебрать его и объединить его путь и размер со строкой, чтобы он находился между ними то есть str "initial"...
526 просмотров
schedule 05.01.2023

Свойства maven pom.xml в проекте leiningen.clj
Я использую команду $ lein pom для создания maven pom.xml из файла Leiningen project.clj . Я делаю это, потому что у меня есть исходные файлы Java в моем проекте Clojure. Я хотел бы убедиться, что следующие свойства maven встроены в...
799 просмотров