
jesse050717
Web Development with Clojure, Third Edition: Issue adding Shadow CLJS
Title: Web Development with Clojure, Third Edition, pg 116
Hi - I just started chapter 5 and I am stuck on page 116 while trying to start up shadow CLJS. Here is the error
shadow-cljs - nREPL server started on port 7002
shadow-cljs - watching build :app
[:app] Configuring build.
[:app] Compiling ...
[:app] Build failure:
The required namespace "guestbook.core" is not available, it was required by "guestbook/app.cljs".
"guestbook/core.clj" was found on the classpath. Should this be a .cljs file?
Here is my project.clj dev profile
:project/dev {:jvm-opts ["-Dconf=dev-config.edn" ]
:dependencies [[pjstadig/humane-test-output "0.10.0"]
[prone "2020-01-17"]
[ring/ring-devel "1.8.1"]
[ring/ring-mock "0.4.0"]
[thheller/shadow-cljs "2.11.4"]
[binaryage/devtools "0.9.10"]]
:plugins [[com.jakemccrary/lein-test-refresh "0.24.1"]
[jonase/eastwood "0.3.5"]]
:source-paths ["env/dev/clj" "env/dev/cljc" "env/dev/cljs"]
:resource-paths ["env/dev/resources"]
:repl-options {:init-ns user
:timeout 120000}
:injections [(require 'pjstadig.humane-test-output)
(pjstadig.humane-test-output/activate!)]}
Here is my setup:
Any ideas here? Loving the book by the way, an enjoyable first dive into Clojure web development.
Marked As Solved

svmbrown
Oops, sorry about that! We’ll fix that in the next release.
Thanks for bringing this to our attention, and thanks for reading!
Also Liked

jesse050717
I’ve figured this one out. The previous project.clj with the :cljsbuild config had its own :source-paths [“src/cljs”] entry. When switching over to shadow-cljs, we also have to add “src/cljs” to our lein :source-paths. This isn’t called out in the current version of the book and might be worth including.
Thanks
Popular Prag Prog topics










Other popular topics









Latest in PragProg
Latest (all)
Categories:
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /js
- /rails
- /python
- /security
- /go
- /swift
- /vim
- /clojure
- /haskell
- /java
- /emacs
- /svelte
- /onivim
- /typescript
- /crystal
- /c-plus-plus
- /tailwind
- /kotlin
- /gleam
- /react
- /flutter
- /elm
- /ocaml
- /vscode
- /opensuse
- /centos
- /ash
- /php
- /deepseek
- /scala
- /zig
- /html
- /debian
- /nixos
- /lisp
- /agda
- /textmate
- /sublime-text
- /react-native
- /kubuntu
- /arch-linux
- /revery
- /ubuntu
- /manjaro
- /spring
- /django
- /diversity
- /nodejs
- /lua
- /slackware
- /julia
- /c
- /neovim