clj-on-windows

For those interested in making clj on Windows https://dev.clojure.org/jira/browse/TDEPS-67. Also see https://github.com/littleli/scoop-clojure.
Vishal 2019-04-14T13:11:12.001600Z

would it be possible to get a pre-built jar to run like this? >java -jar clojure.jar

alexmiller 2019-04-14T13:17:13.002500Z

There are instructions on how to build one in the Clojure github readme

alexmiller 2019-04-14T13:17:51.002700Z

https://github.com/clojure/clojure/blob/master/readme.txt

alexmiller 2019-04-14T13:19:43.005Z

Because this pulls in other deps, it’s not an artifact that we officially build and publish. We think it makes more sense to build apps on top of published (more fine-grained) artifacts

Vishal 2019-04-14T13:28:10.005700Z

Cloning the repo and building will pull more dependencies than the Powershell installation?

alexmiller 2019-04-14T13:46:57.006400Z

simultaneously, yes and no. these are very different things.

alexmiller 2019-04-14T13:48:00.007400Z

if you clone the Clojure github repo and build a self-contained Clojure jar with Maven, then it will retrieve two additional jars and combine them all together into a clojure.jar that you can run with java -jar clojure.jar

alexmiller 2019-04-14T13:49:50.009300Z

the powershell installation is not Clojure. it is a tool (clj) with the ability to download dependencies, assemble classpaths, and run Clojure programs. That tool is also written in Clojure and contains inside of it a combined "uber-jar" that includes Clojure, the deps mentioned above, and dozens of other external libraries to do things like access Maven, access git repos, etc.

alexmiller 2019-04-14T13:50:43.010Z

clj uses that code to run, but does not proactively download Clojure itself or any other dependencies until asked

alexmiller 2019-04-14T13:52:48.011700Z

Clojure, as with any language, has an ecosystem of libraries around it (actually, two - Java and Clojure). While you can build clojure "from scratch" and use it as a repl, or for learning the language, you will eventually need and want to tap into that ecosystem, and that's what the clj tool is designed to enable

Vishal 2019-04-14T16:49:31.015700Z

thanks, I looked at the PowerShell module and it should be possible to covert to a standalone script, which I would prefer.