I’ll try my luck here, just in case 🙂
I’m converting a 2017 Luminus + Immutant + re-frame + lein-figwheel project to tools-deps + shadow-cljs. I’ve kept dependencies updated along the way. I currently have the new dev setup working. My issue is with the uberjar step. In the lein project I’m moving away from it works just fine with
:aot :all, but when I try to AOT compile with
clj -e "(compile 'app.core)" it prints e.g.
[wrap-auth] (a println from a middleware ns), but after some more reflection warnings and stuff it hangs. I don’t see any data written to the “classes” dir either. Asking in the #tools-deps I learned that AOT compilation actually runs the code in the process. I’m not an Java person so I was not aware of it and that makes me wonder how that works when it is a web server I’m compiling. It’s supposed to “hang” waiting for connections... But it did work with the lein project, so I might have introduced a bug or done something stupid. Or there’s some little detail I’ve missed.
Anyway, the lein uberjar profile looks very plain and straight forward, so I’m looking for tips on what might cause behaviour like this, or if there is some detail in the Luminus setup for AOT I’m not aware of.