gpt4 book ai didi

clojure - clojurescript项目设置中没有这样的命名空间: clojure. spec.alpha

转载 作者:行者123 更新时间:2023-12-04 17:07:22 26 4
gpt4 key购买 nike

我正在尝试学习clojure.spec。在通过启动构建工具设置clojure项目时,在需要clojure.spec.alpha时出现以下错误。

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

我的启动配置如下:
(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文件如下:
(ns flowparser.app
(:require [clojure.spec.alpha :as spec]))

(defn init []
"Hello World")

由于我刚开始使用 clojure,因此有关此类问题的任何建议将大有帮助。

谢谢

最佳答案

您在一个特别棘手的时刻获取规范。 Clojure 1.9.0-alpha16刚刚将 namespace 从clojure.spec更改为clojure.spec.alpha

ClojureScript在master上进行了等效的更改,但尚未发布新版本。因此,对于ClojureScript <= 1.9.521,您需要改为使用clojure.spec作为所需的 namespace 。

关于clojure - clojurescript项目设置中没有这样的命名空间: clojure. spec.alpha,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43829877/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com