Re: Forcing a Java version
vtorres@gmail.com wrote On 08/01/06 14:49,:
Hi,
I work in a hospital system that has a few different applications that
can run different versions of java. The "highest" version of java we
use now is 1.4.2_09. We would like to lock that version on our users
computers and not allow any updates to java (the newest version of java
doesn't work with some of our older applications). How do we do that?
Also, how do we make it that if the user goes to a website that wants
to install a newer version of java, the user won't be allowed to, or
won't even be offered?
If your applications are distributed via Java Web
Start, you can specify the Java version(s) that will be
used to run them. This won't prevent someone from
installing 1.9.7_42, but it'll just sit on his disk and
take up space: JWS will still use the JRE version you
specify. (There'll be some amount of unpleasantness if
the user removes 1.4.2_09 while installing 1.9.7_42, but
even that damage is recoverable.)
Alternatively, you could use the brute-force approach:
Add a little bit of code just as the app starts up, and
have it check System.getProperty("java.vm.version") and
bail out if the value is unacceptable. Again, this is an
after-the-fact remedy, not a preventative measure.
Note that either method allows you to tailor the
accepted JRE versions to the "older applications" you're
worried about. You don't need to tie the entire system to
an old JRE on behalf of an app the system's owner never
uses anyhow; you can specify the acceptable versions on
an app-by-app basis to reflect the results of your own
testing.
--
Eric.Sosman@sun.com