Great, thanks Nikita.
I have combined the code into one core.clj file, and, I think added the appropriate directives. The sketch now runs frrom terminal with `lein run`. I made an uberjar
Howerver, when I run the uberjar with
`java -jar target/fractagons-1.0.0-SNAPSHOT.jar`
I get
`Exception in thread "main" java.lang.NoClassDefFoundError: clojure/lang/Var
at fractagons.core.<clinit>(Unknown Source)
Caused by: java.lang.ClassNotFoundException: clojure.lang.Var
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
`
I wonder what I'm missing.
My core.clj is like
`(ns fractagons.core
(:require [quil.middleware :as m]
[quil.core :as q]
[clojure.string :as str])
(:gen-class))
(import javax.swing.JFileChooser)
;;;; setup, draw and other functions
(defn -main [& args]
(q/sketch
:title "Fractagons"
:setup setup
:update update-state
:draw draw
:mouse-clicked mouse-clicked
:key-typed key-typed
:size [768 768]
:features [:exit-on-close]
:middleware [m/fun-mode]))`
and my project.clj is
`(defproject fractagons "1.0.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.8.0"]
[quil "2.6.0"]]
:aot [fractagons.core]
:main fractagons.core
:repl-options {
;; If nREPL takes too long to load it may timeout,
;; increase this to wait longer before timing out.
;; Defaults to 30000 (30 seconds)
:timeout 120000
}
)`