fulcro

Book: http://book.fulcrologic.com, Community Resources: https://fulcro-community.github.io/, RAD book at http://book.fulcrologic.com/RAD.html
theeternalpulse 2021-06-26T14:40:02.276200Z

Trying to follow the fulcro developer guide from scratch. have all the basic deps and shadow config, startup script and html setup but when I run npx shadow-cljs server I get the following error

Execution error (FileNotFoundException) at clojure.main/main (main.java:40).
Could not locate shadow/cljs/devtools/cli__init.class, shadow/cljs/devtools/cli.clj or shadow/cljs/devtools/cli.cljc on classpath.
I copied the configs so not sure what's missing.

lgessler 2021-06-26T15:39:41.277Z

I get that error a lot when I'm missing a development alias in deps.edn... double check whether the alias that includes devtools is being included perhaps?

lgessler 2021-06-26T15:40:06.277500Z

(devtools is usually an extra dep included in an alias instead of a core dep)

theeternalpulse 2021-06-26T15:46:11.278100Z

my deps.edn

{:paths   ["src/main" "resources"]
 :deps    {org.clojure/clojure    {:mvn/version "1.10.1"}
           com.fulcrologic/fulcro {:mvn/version "3.5.0-RC3"}
           #_[ com.fulcrologic/fulcro {:mvn/version "3.4.22"}]}

 :aliases {:dev {:extra-paths ["src/dev"]

                 :extra-deps  {org.clojure/clojurescript {:mvn/version "1.10.866"}
                               thheller/shadow-cljs      {:mvn/version "2.14.5"}
                               binaryage/devtools        {:mvn/version "1.0.3"}}}}}
my shadow-cljs.edn
{:deps     {:aliases [:dev]}
 :dev-http {8000 "classpath:public"}
 :builds   {:main {:target     :browser
                   :output-dir "resources/public/js/main"
                   :asset-path "/js/main"
                   :modules    {:main {:init-fn mindjoin.client/init
                                       :entries [mindjoin.client]}}
                   :devtools   {:after-load mindjoin.client/refresh
                                :preloads   [com.fulcrologic.fulcro.inspect.preload]}}}}

theeternalpulse 2021-06-26T15:46:16.278300Z

this is straight from the docs

lgessler 2021-06-26T17:03:11.278800Z

i believe you need org.clojure/tools.namespace {:mvn/version "1.0.0"} under :extra-deps in :dev? edit: wait sorry, misread that error and it looks like it's shadow-related... not sure then, you might try #shadow-cljs

thheller 2021-06-26T17:22:19.280400Z

@theeternalpulse the error you get when shadow-cljs is not on the classpath. unsure why it wouldn't be though. config looks ok AFAICT. I don't use deps.edn though so maybe someone else can spot the error? shadow-cljs.edn is fine and would not affect this, as long as the :deps value is set

thheller 2021-06-26T17:23:13.281100Z

if this is a pure CLJS project just don't bother with aliases and just use the regular :deps

xceno 2021-06-26T19:22:00.284200Z

I got the same error with the latest shadow release and simply reverted back to the older one. Had no time to do bug hunting that day. Your deps.edn looks fine otherwise. I'm on my phone right now, can try to reproduce it later

theeternalpulse 2021-06-26T19:22:22.284500Z

ok, I'll try to look at a previous, and if it works I'll report an issue

theeternalpulse 2021-06-26T19:29:21.285200Z

when I do clj -Spath I do not see shadow in the classpath, not sure if this is relevant to when I run with shadow-cljs

theeternalpulse 2021-06-26T21:05:56.286100Z

Turned out I had to re-insatall clojure tools to use the shadow/deps combo