This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-07-30
Channels
- # aleph (4)
- # beginners (24)
- # boot (15)
- # cider (4)
- # cljs-dev (37)
- # clojure (73)
- # clojure-losangeles (1)
- # clojure-serbia (1)
- # clojure-spec (27)
- # clojurescript (78)
- # core-logic (3)
- # datascript (9)
- # datomic (10)
- # events (1)
- # lein-figwheel (1)
- # lumo (2)
- # off-topic (14)
- # om (6)
- # om-next (1)
- # parinfer (18)
- # pedestal (2)
- # protorepl (4)
- # re-frame (2)
- # reagent (56)
- # specter (6)
- # unrepl (2)
Trying fo follow the lambdaisland Tutorial https://lambdaisland.com/episodes/react-app-clojurescript Hitting a blocker right at the beginning. I've ran:
lein new chestnut calculator -- --vanilla
Then I've added the following dependencies:
[cljsjs/react "15.1.0-0"]
[cljsjs/react-dom "15.1.0-0"]
And finally I've run the command lein figwheel
.
It spits out a stacktrace though that it can't load ring/core/protocols.clj
from the classpath. According to github that file exists in ring 1.6.1 and 1.6.2 (tried both).
What am I missing?
The exact error is
Caused by: java.io.FileNotFoundException: Could not locate ring/core/protocols__init.class or ring/core/protocols.clj on classpath., compiling:(ring/util/servlet.clj:1:1)
Hi @vinai, it seems this is a problem with the current Chestnut. To work around it, you can start a lein repl
, then start Figwheel with (go)
I can confirm that the Figwheel update fixes it. This is already on Chestnut master. I'll try to cut a new Chestnut version today with some other version upgrades as well.
Chestnut v0.15.2 is out which should fix this problem. Thanks for letting me know @vinai!
When I run lein new chestnut
it still seems to create the project based on the 0.15.1 template.
the tempate hasn't been updated. try just changing the project.clj
file to point to .0.15.2 now
Problem is, I updated the figwheel dependency to 0.5.11
and ran lein deps
but am still getting Could not locate ring/core/protocols__init.class or ring/core/protocols.clj on classpath., compiling:(ring/util/servlet.clj:1:1)
if there's no template, the best idea is to explicitly require the updated lib version, even if it was implicit before
in fact, this would even be a better plan if there was a new template version, it's less work
if you look at lein deps :tree
you'll see where chestnut comes in, your dep should be specified before the thing that currently pulls it in
Okay, if I not only update figwheel to 0.5.11 but also figwheel-sidecar and lein-figwheel, then the error goes away and I can start figwheel.