All,

Developing in clojure is a lot of fun, at least it was for me and a
project of mine - except for one thing: Deploying the app as Java Web
Start app, that took me a bit of time to figure out, and not only
because Java Web Start is broken in debian squeeze (for a workaround,
see bugs.debian.org/560056 ).

Java Web Start has been discussed in this group some time ago (
http://groups.google.com/group/clojure/browse_thread/thread/f0c69735c5a9bd03/
), and the proposed solution at that time contained one Java class
that did some static initialization (to propagate the necessary
permissions to clojure's own classloader) and then went on to call RT
to load a clj file, after fiddling around with PushBackReaders and so
forth.

I would like to stay away from RT, as it can change, and I don't want
to depend on RT staying the way it is. Now it turns out that Web Start
is actually pretty easy if you just AOT your whole app and gen-class
your main entry point. That way you don't need any Java code.

My clj file that contains the entry point starts like this:

(ns kanshiki.swing
  (:gen-class))

Then I compile the app and create the jar file:
mkdir classes
java -cp clojure.jar:clojure-contrib-slim.jar:classes:. clojure.main -
e "(compile 'kanshiki.swing)"
(cd classes; jar cf ../kanshiki-boom.jar *)
jarsigner kanshiki-boom.jar

And the jnlp contains these tags to make it work:
...
  <resources>
    <j2se version="1.6*"/>
    <jar href="clojure.jar"/>
    <jar href="kanshiki-boom.jar" main="true"/>
  </resources>
  <application-desc main-class="kanshiki.swing"/>
...

The complete jnlp can be found at http://dueck.org/kanshiki-boom/ .

I plan to introduce and document this beta-grade app soon, but if
there's any Japanese learner out there interested in or in need of
Kanji handwriting recognition, check it out, but please hold back with
any bug reports etc. until I have introduced it.

Only one quick note: Kanjis you click will automatically be copied to
the clipboard, so if you use it together with a kanji dictionary that
can search the clipboard like kiten (yes, that's the KDE kanji
dictionary with the huuuuge memory leak, the other day it grew to 6GB
before I killed it), it is actually useful to look up kanjis or words.

Oh, and did I mention lately that clojure is pure fun? Thanks again
Rich! You've done (and are still doing) a terrific job!

Eugen

-- 
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

Reply via email to