Link to home
Start Free TrialLog in
Avatar of afterburner
afterburner

asked on

JRE Question

What is the minimum set of JRE files I need to distribute to allow a small application to run on other Windows machines, where do I get them from, and what does the recipient need to do to install at their end?
Avatar of s_lavie
s_lavie

It doesn't seem wise to install less than JRE on a machine. You never know which classes you realy need, until you need them at run time.
The best, I think, is  to install a full JRE, which can be download from sun's web site, for free.
Avatar of CEHJ
I sympathise with your plight. Something should be done about the monolithic nature of the runtime. There was, at some point, an online petition or comments site, probably somewhere at Sun, where one could register disapproval of the size of this stuff.
No favours are being done to Java by requiring a runtime download that is so massive in relation to an application that might run on it. Why should a company download several megabytes of runtime when they can get a small C/C++ programme to do the same job in a few K? (OK I *can* think of a least one reason, but it/they are decreasingly compelling as the runtime is increasing in size).

I can give you a few pointers as to how to go about this, but it won't be anthing other than a bore!

Deciding what classes to run your app is the easy bit. If you compile it with the verbose switch, it'll tell you what classes are loaded by it.

As for the other bits, you'll have to do something like start with a Java-free box and then do a comparison on the system files and the registry. Don't overlook hidden files.

If you *do* do this, please share it with the rest of us.
There could be licensing issues with distributing a custom runtime of course...
Pretty sure distributing only part of the JRE is a breach of the licensing.

If you only use 1.1 classes then you can simply run it using the MS JVM, removing the need to install the JRE.
Avatar of afterburner

ASKER

Holy Moses.

s lavie:

I looked there but couldn't see anything for Windows, only Solaris.

CEHJ:

I had a feeling it was going to be like that. Great answer though. I made small start with copying the Java.exe over to a J-free box, and the Java.DLL. I tried registering the DLL but that failed with cant load library message. Hung my head in despair and foresaw long road ahead as you describe. Pondered to myself that the runtime for applets must be different from that for apps. but wasn't sure. Kicked myself for not knowing such basic facts already.

Finished off that round of desperation with coup de grace that even if I did send complete JRE to recipient, I couldn't see any setup.exe or install.exe in the JRE on my machine, so came to conclusion that this idea too must be the wrong one.(??)

If I do do any work on it, will undoubtedly share; but identifying best starting point difficult.
objects:

how do I do that? (ms jvm)
> I looked there but couldn't see anything for Windows, only Solaris.
Looked where? and trying to find what (a JRE)?
ASKER CERTIFIED SOLUTION
Avatar of Mick Barry
Mick Barry
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
objects - maybe some mass license-breaking will be a step towards stopping Sun shooting themselves in the foot on the client side :-)

btw Do you know where the MS classes are on Win 2K?

afterburner - objects could be adding value to my answer here!
> Do you know where the MS classes are on Win 2K?

winnt\java\packages
Cheers!
>Looked where? and trying to find what (a JRE)?
Sun. Yes.
>jview.exe

Dos window flashed up with some (looked like) error help in it. What does it do?
It's a JVM, same as java.exe from Sun.
Thanks all; thanx objects;

EE is the best place ever.

aftrbrnr
:-)

http://www.objects.com.au/staff/mick
Brainbench MVP for Java 1
http://www.brainbench.com

PS.

> EE is the best place ever.

You need to get out more :-)
> You need to get out more :-)

It's precisely because of my profligacy that I dont know as much as I should. LOL.