2017-05-07 8 views
5

मैं clojure.spec सीखने की कोशिश कर रहा हूं। बूट बिल्ड टूल के साथ क्लोजर प्रोजेक्ट की स्थापना करते समय मुझे clojure.spec.alpha की आवश्यकता होने पर निम्न त्रुटि मिल रही है।ऐसी कोई नामस्थान नहीं: clojure.spec.alpha clojurescript परियोजना सेटअप

Compiling ClojureScript... 
• js/app.js 
No such namespace: clojure.spec.alpha, could not locate clojure/spec/alpha.cljs, clojure/spec/alpha.cljc, or Closure namespace "clojure.spec.alpha" in f 
ile src/cljs/flowparser/app.cljs 
Elapsed time: 0.141 sec 

मेरे बूट विन्यास इस प्रकार है:

(ns flowparser.app 
    (:require [clojure.spec.alpha :as spec])) 

(defn init [] 
    "Hello World") 

के रूप में मैं सिर्फ clojure इन के बारे में किसी भी सुझाव के साथ शुरू कर रहा हूँ:

(def +version+ "0.0.1-SNAPSHOT") 
(def +description+ "Parses graph DSL for VADE") 

(set-env! 
    :source-paths #{"src/cljs"} 
    :resource-paths #{"resources"} 
    :dependencies '[ 
        [org.clojure/clojure "1.9.0-alpha16"] 
        [org.clojure/clojurescript "1.9.521"] 
        [org.clojure/core.async "0.3.442"] 
        [adzerk/boot-cljs "2.0.0" :scope "test"] 
        [adzerk/boot-cljs-repl "0.3.3" :scope "test"] 
        [adzerk/boot-reload "0.5.1" :scope "test"] 
        [pandeiro/boot-http "0.8.0" :scope "test"] 
        [com.cemerick/piggieback "0.2.1" :scope "test"] 
        [org.clojure/tools.nrepl "0.2.13" :scope "test"] 
        [weasel "0.7.0" :scope "test"] 
        [crisptrutski/boot-cljs-test "0.3.0" :scope "test"] 
        [binaryage/dirac "1.2.7" :scope "test"] 
        [powerlaces/boot-cljs-devtools "0.2.0" :scope "test"] 
        [proto-repl "0.3.1" :scope "test"] 
        [proto-repl-charts "0.3.2" :scope "test"] 
        [boot-codox "0.10.3" :scope "test"] 
        [adzerk/bootlaces "0.1.13"]]) 

(require 
'[adzerk.boot-cljs  :refer [cljs]] 
'[adzerk.boot-cljs-repl :refer [cljs-repl start-repl]] 
'[adzerk.boot-reload :refer [reload]] 
'[pandeiro.boot-http :refer [serve]] 
'[crisptrutski.boot-cljs-test :refer [test-cljs]] 
'[powerlaces.boot-cljs-devtools :refer [cljs-devtools dirac]] 
'[codox.boot :refer [codox]] 
'[adzerk.bootlaces :refer :all]) 

(bootlaces! +version+ :dont-modify-paths? true) 

(task-options! 
    pom {:project  'vadelabs/flowparser 
     :version  +version+ 
     :description +description+ 
     :url   "https://github.com/pntripathi9417/flowparser" 
     :scm   {:url "https://github.com/pntripathi9417/flowparser"} 
     :license  {"Eclipse Public License" 
        "http://www.eclipse.org/legal/epl-v10.html"}}) 

(deftask build [] 
    (comp (speak) 
     (cljs))) 

(deftask run [] 
    (comp (serve) 
     (watch) 
     (cljs-repl) 
     (dirac) 
     (reload) 
     (build) 
     (target))) 

(deftask production [] 
    (task-options! cljs {:optimizations :advanced}) 
    identity) 

(deftask development [] 
    (task-options! cljs {:optimizations :none} 
       reload {:on-jsload 'flowparser.app/init}) 
    identity) 

(deftask dev 
    "Simple alias to run application in development mode" 
    [] 
    (comp (development) 
     (run))) 

(deftask docs [] 
    "Generates documentation for the library" 
    (comp (codox 
      :name "vadelabs/flowparser" 
      :description +description+ 
      :version +version+ 
      :language :clojurescript 
      :output-path ".") 
     (target :dir #{"docs"}))) 

मेरे मुख्य app.cljs फ़ाइल इस प्रकार है तरह के मुद्दे बहुत उपयोगी होंगे।

धन्यवाद

उत्तर

0

शायद spec.alpha के एक नए संस्करण आपकी समस्या का समाधान हो सकता है की आवश्यकता होती है।

अपने निर्भरता

[org.clojure/spec.alpha "0.1.108"] 

मेंटेनर से एक व्याख्या करने के लिए इस जोड़ने का प्रयास करें यहाँ है https://groups.google.com/d/msg/clojure/10dbF7w2IQo/s5kUM4tCAAAJ

9

आप एक विशेष रूप से मुश्किल पल में कल्पना को ले रहे हैं। क्लोजर 1.9.0-अल्फा 16 ने clojure.spec से clojure.spec.alpha से नामस्थान बदल दिए।

क्लोजरस्क्रिप्ट ने मास्टर पर समकक्ष परिवर्तन किए हैं लेकिन एक नया संस्करण अभी तक जारी नहीं किया गया है। तो ClojureScript < = 1.9.521 के लिए, आपको इसके बजाय नामस्थान के रूप में clojure.spec का उपयोग करने की आवश्यकता होगी।

संबंधित मुद्दे