views:

35

answers:

1

Hi,

I am working on a java based application and we are looking to ease our deployment of updates. Up until now, we've always simply sent out new install packs & had the sysadmin's on our customer sites roll out the upgrades - painful for a large number of users.

what I'd like to do is something similar to java webstart (or eclipse p2) - when the application starts, it checks for updates in a specified location and then downloads the updates prior to starting.

But here's my problem - I want more control over what's done outside of the scope of plugins & jar files. For example:

  • I'd like to be able to upate my JVM (we ship a modified version with additional security features).
  • I need to install DLL's - possibly local to the jar files, sometimes to windows
  • Occasiontally run MSI's to install windows components (e.g. printer drivers).
  • I need to modify config files & the registry.

I have found a few applications that support this (such as AppLifeUpdate at http://www.kineticjump.com/) but they tend to be .NET focused and it seems a bit perverse to introduce a .NET dependancy on a java application ;)

I know I could write my own here, but if there is already a 3rd party library out there that supports this kind of facility, then it would make my life a lot easier.

So, has anyone else had a similar problem & knows of some products I could look at?

Thanks, Brian.

A: 

Hi Brian,

I have done similar things but on Linux/Unix, so can't suggest any specific products for Windows. But I always found helpful to either package everything in OS format and distribute everything that way (rpms, debian pkg, Solaris pkg, ...) or have the platform deployed through OS mechanisms and have the application deployed through Java mechanism (Web start).

The reason is that sysadmins typically don't like things that magically update themselves without them knowing or in a way that does not follow standard practices. That is: you can't expect to make your life easier if you are not sure that you are not making their life more difficult...

Also: whatever work I do at the OS level, I do it with OS tools. If on Windows it means using .NET, I would very much consider using that...

Hope this helps!

Carcassi