2014-12-02 4 views
0

раз я добавил еще одно пространство имен в моем проекте (игрушка) один возбуждается исключение после запуска сервера:команда Lein запуска вызывает исключение

lein run 

я копирую ниже моего файла project.clj.

(defproject compoj02 "0.1.0-SNAPSHOT" 
:description "FIXME: write description" 
:url "http://example.com/FIXME" 
:license {:name "Eclipse Public License" 
:url "http://www.eclipse.org/legal/epl-v10.html"} 
:dependencies [[org.clojure/clojure "1.6.0"] 
      [ring "1.3.1"] 
      [compojure "1.2.1"] 
      [clout "2.0.0"] 
      [enlive "1.1.5"] 
      [org.clojure/data.csv "0.1.2"] 
      ;[org.clojure/data.csv] 
      ] 
:main   compoj02.core) 

Ошибка

Exception in thread "main" java.io.FileNotFoundException: Could not locate clojure/data/csv__init.class or clojure/data/csv.clj on classpath: , compiling:(compoj02/pompaq.clj:1:1) 
    at clojure.lang.Compiler.load(Compiler.java:7142) 

Новое пространство имен содержит одну простую функцию:

(ns compoj02.pompaq 
    (:require [clojure.data.csv :as csv] 
      [clojure.data.io :as iov])) 

(defn process-csv [file] 
    (with-open [in-file (iov/reader file)] 
     (doall 
     (csv/read-csv in-file)))) 

спасибо за чтение!

PS. Я добавляю несколько деталей. Я выполнил команды lein deps. Кроме того, существует цепочка файлов: core.clj использует ссылку на templates.clj, и эта использует ссылку на pompaq.clj. Когда я комментирую объявление (: use compoj02.pompaq), используемое в пространстве имен templates.clj, я могу запустить приложение с помощью lein run.

ответ

0

Попробуйте lein deps, чтобы убедиться, что все есть. Кроме того, без -main функции, ваша команда должна быть =>

lein run -m compoj02.pompaq/process-csv file-arg-here

+0

я получил ту же ошибку, когда я удалить комментарий для data.csv «0.1.2». Благодаря! – dag

+0

@dag вы пробовали лейн депо? – runexec

+0

runexec: lein всегда выбирает deps – noisesmith

Смежные вопросы