plexus / chestnut

Application template for Clojure + ClojureScript web apps
Eclipse Public License 1.0
1.32k stars 99 forks source link

Project won't start with Java 9 #227

Closed Risord closed 5 years ago

Risord commented 6 years ago

Applied workaround for figwheel Java 9 incompatibility issue described here: bhauman/lein-figwheel#612

Disclaimer: I have currently zero experience about Clojure(Script) ecosystem -> this works for me but I have no idea is it acceptable way.

featheredtoast commented 6 years ago

Hey, thanks for reporting - looks like this will be fixed in upstream tooling. Once we adopt that as our base cljs version, we should be good.

I'll keep this issue open in the meantime for tracking.

plexus commented 6 years ago

Chestnut 0.16.0 is out now, containing the latest stable ClojureScript. Does that mean this is fixed?

beders commented 6 years ago

Still happening with 0.16.0. Merging this would fix the problem.

plexus commented 6 years ago

If I read the upstream report correctly then this patch would break support for Java 8, which we also don't want to do.

beders commented 6 years ago

It looks like lein 2.8.1 also has issues (I'm getting a NullPointerException hawk.core/extract-paths-by-type/fn--26609 (core.clj:15) when running with Java 9 and lein 2.8.1)

How about adding a conditional section to project.clj and something like that? (def is-at-least-java9 (>= (read-string (System/getProperty "java.vm.specification.version")) 9))

That would at least generate a project.clj that works out of the box for the current Java version used.

featheredtoast commented 5 years ago

I've got a workaround for this in #241 - Java 11 does not work with this solution, and needed the explicit extra dependency for this.

We can drop the dependency entirely with http-kit 2.3 and a newer version of clojurescript, but it'll take a little extra fiddling to get that part working OK.