It is legal to specify codebase like this:
<jnlp spec="6.0+"
codebase="file:/c:/MyApp/"
href="myapp.jnlp">
When you import this with JWS it creates desktop shortcut and the application is working.
However, one thing is very different from remote codebase. When I update those files while the application is running, it basically stops working flooded with ClassNotFoundExceptions
. It seems as if JWS did not copy the jars, or copied them immediately as they are updated somehow overwriting those used by the running process.
How can I get it to work as if the files were remote? That is, copy files to cache and only check for updates on launch.
EDIT: I haven't found a way to do it and decided to go with a homebrew replacement. Along the way I found several bugs and made some observations that I summed up at http://squirrel.pl/blog/2011/11/24/java-web-start-bugs-offline-edition/. Posting it here in case it could be of any use for someone.