2014-03-29 2 views
15

인 해방군 기반의 clojure 프로젝트에서 DB로 datomic을 사용하고 있습니다. 우리의 로컬 dev에 DB를 S3 호스트로 마이 그 레이션하고 우리의 project.clj에 필요한 의존성을 추가하면 우리는 REPL을 시작할 수 없지만 Liberator 스택은 잘 실행됩니다. lein runlein REPL 서버 출시가

제 생각에 DB 연결이 문제를 일으키고 있습니다. 그래서 질문은, 어떻게하면 "디버그"하거나이 lein repl 타임 아웃의 이유가 무엇인지 파악할 수 있습니까?

내 project.clj

(defproject myproject "0.1.0-SNAPSHOT" 
    :main myproject.core 
    :jvm-opts ["-Xmx1G"] 
    :datomic {:schemas ["resources" ["myproject-schema.edn" ]]} 
    :plugins [[lein-ring "0.8.10"]] 
    ; cp bin/transactor config/samples/free-transactor-template.properties resources/transactor.properties 
    :profiles {:dev 
      {:datomic { 
         ; :config resources/transactor.properties 
         ; :db-uri "datomic:free://127.0.0.1:4334/myproject"} 
         :db-uri "datomic:ddb://us-east-1/datomica/myproject"} 

:dependencies [[ring-mock "0.1.5"] 
          [midje "1.5.1"] 
          ] 
       } 
      } 
    :dependencies [[org.clojure/clojure "1.5.1"] 
       [com.datomic/datomic-pro "0.9.4556"] 
       ; [com.datomic/datomic-free "0.9.4470"] 
       [com.cemerick/friend "0.2.0"] 
       [liberator "0.10.0"] 
       [compojure "1.1.5"] 
       [http-kit "2.1.13"] 
       [cheshire "5.1.1"] 
       [ring/ring-jetty-adapter "1.1.0"] 
       [ring/ring-devel "1.2.0"] 
       [org.clojure/clojure-contrib "1.2.0"] 
       [url62 "1.0.0-SNAPSHOT"] 
       [clj-http "0.7.8"] 
       [org.clojars.nathell/clojure-contrib "1.2.0"] 
       [com.taoensso/timbre "3.0.0-RC4"] 
       [clj-aws-s3 "0.3.8"] 
       [image-resizer "0.1.5"] 
       [pandect "0.3.1"] 
       [base64-clj "0.1.1"] 
       ] 
    :ring { 
      :handler myproject.core 
      } 
) 

내 profiles.clj

cat ~/.lein/profiles.clj               
{:user {:dependencies [[slamhound "1.5.0"]] 
     :aliases {"slamhound"["run" "-m" "slam.hound"]} 
     :plugins [[lein-datomic "0.2.0"] 
        [lein-midje "3.0.0"] 
            [lein-html5-docs "2.0.0"] 
            [lein-pprint "1.1.2-SNAPSHOT"]] 
       ; :datomic {:install-location "/opt/datomic-free"} 
       :datomic {:install-location "/opt/datomic-pro/"} 
       } 
}%  

내 .zshrc

export CLASSPATH=$CLASSPATH:/home/user:/opt/datomic-pro:. 

내 ENV

Leiningen 2.3.3 on Java 1.7.0_25 OpenJDK 64-Bit Server VM 
Linux 3.8.0-35-generiC#50-Ubuntu SMP Tue Dec 3 01:24:59 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux 

답변

24

모든 오리를 주문하는 데 때로는 시간이 걸릴 수 있습니다. 이런 긴 시간 초과로 project.clj 파일에 :repl-options을 지정 트릭을 할해야

:repl-options { 
      ;; If nREPL takes too long to load it may timeout, 
      ;; increase this to wait longer before timing out. 
      ;; Defaults to 30000 (30 seconds) 
      :timeout 120000 
      } 

희망을.

+0

에서 논의 된 내가이 선택을 몰랐기 때문에. – Rebs