Sigh. This was supposed to go to the list again.

/me searches in vain for his mind.

-- 
? Mike Gratton - [EMAIL PROTECTED]
! "Scientific progress goes 'boink'?"
 > http://web.vee.net/



Apologies for taking sunk a long time to reply..

Joe Emenaker wrote:

> 
> Granted, my example was entirely contrived, but it was to make a point. How
> about a more plausible example:
> 
> foo.jar makes reference to "../bar.jar". [snip]


I'd still say that's a broken way of using manifest classpaths, for the 
same reason you outlined. If I encountered an app which does such a 
thing, then I'd talk to the author to get it fixed, or use somthing 
else. Using a manifest classpath for a jar containing a library, rather 
than an application is also a bad idea. Again, I'd try to get it fixed, 
or not use it.

However, here's an example of a non-broken way of using a manifest 
classpath, which I think works quite nicely.

You've written an application with depends on a library in foo.jar, and 
you distribute it with your app. In this case, I'd do the following put 
foo.jar in ${APPLICATION_ROOT}/lib. I'd then create a jar in 
${APPLICATION_PATH} containing the application's classes with a manifest 
which specifies the main class and  a classpath of lib/foo.jar.

You can then just tell users to execute the application's jar, as it a) 
specifies the class to be run and b) includes all dependencies. No mess, 
no fuss, no platform-specific startup scripts. Great stuff.

Mike.

-- 
? Mike Gratton - [EMAIL PROTECTED]
! "Scientific progress goes 'boink'?"
 > http://web.vee.net/



Reply via email to