I wrote a guide available at https://github.com/bmillare/dj.solo on how to 
build fully isolated minimal Clojure "deployments" for friends. This is NOT 
intended to be an industrial grade solution. Instead I am documenting the 
surprisingly 
simple process of loading a basic Clojure application.

Imagine that you want to show off your new Clojure app to your friend but 
it turns out she uses Windows. She doesn't like you installing weird stuff 
on her computer so she said you are only allowed to run everything from a 
usb stick. To top it off, she doesn't even have Java installed. dj.solo solves 
this problem of "deploying" your app to your friend under her constraints. 
It does so by creating a standalone Clojure app/distribution that bundles 
everything you need to run the application, including the dependent jars, 
app source code, and the desired JVM. Nothing technically novel is 
presented. Instead a simple approach is documented that is easy to 
customize to your needs.


The advantages to this approach are:

   - isolated installation
   - barebones, minimal software
      - you know what's being installed and being depended on
      - startup to repl is much faster than leiningen or boot
         - you can always add them later if you need their functionality
      
The limitations to this approach are:

   - the OS will not suggest updates to Java
      - although, theoretically, you could have the app detect a new Java 
      version, download it, and set the correct new paths
   - You might have extra copies of Java, the system installation and the 
   app provided one
      - potentially, if you put multiple apps, you will have a lot of 
      copies of the JVM
      - this could be considered a feature if you want to run specific 
      versions
      - still trivial to manage your self with symlinks
   
Feedback welcome.

Best,
Brent

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to