Как я требую и обеспечиваю clojure файлы?

Ни одно из перечисленных решений не помогло мне.

Вот где у меня возникла проблема:

Я добавил внешний JAR-файл jSoup в путь моего проекта, сначала поместив его в исходную папку с именем «libs», а затем щелкнув правой кнопкой мыши по нему. , Путь сборки -> добавить к пути сборки. Это бросило ошибку преобразования Dalvik. Он сказал, что я «уже включил» класс из этого файла JAR. Я осмотрел каталог проекта и обнаружил, что место, где он «уже включен», на самом деле является каталогом bin. Я удалил файл JAR из каталога bin и обновил проект в Eclipse, и ошибка исчезла!

16
задан unj2 22 July 2009 в 19:24
поделиться

2 ответа

У вас есть несколько вариантов.

Если это просто файл (не в пакете), то в ваших файлах вы можете просто использовать load . Если бы ваш файл был назван «fun.clj», вы бы просто использовали имя файла без расширения:

 (load "fun")

(при условии, что fun.clj был в вашем пути к классам). Или

 (load "files/fun") 

, если он находится не в вашем пути к классам, а в каталоге files .

Или вы можете использовать load-file и передать ему местоположение вашего файла:

(load-file "./files/fun.clj")

Если вы хотите разместить их в пространстве имён (поместить их в пакет), вы должны поместить макрос ns в начало вашего файла, а затем снова поместить его в путь к классам. Затем вы можете загрузить его через , используйте или require .

Вот документы для описанных мною функций:

29
ответ дан 30 November 2019 в 17:15
поделиться

Это решило мою проблему, и я рассмотрел здесь бесчисленное множество других проблем, поэтому я хотел бы уточнить.

Самый простой способ в emacs (в Linux) - это сделать что-то вроде этого:

java -cp "lib/*":. clojure.main -e "(do (require 'swank.swank) (swank.swank/start-repl))"

(обратите внимание на "lib / *" :., заданный для -cp

Затем вы можете использовать Mx slime-connect для соединения с

Не знаю, требуется ли это, но я читал, что неплохо использовать одну и ту же версию clojure, clojure-contrib и swank-clojure с обеих сторон.

Вы также можете настроить путь внутри emacs, превратив "." в swank-clojure-classpath.

1
ответ дан 30 November 2019 в 17:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: