I realize this is apples versus oranges, but here's a comparison between
JDK and JRE sizes on another platform (using file download sizes):
Sun Java SE Development Kit 6 Update 13 for 64-bit X86 Linux (RPM bin):
72.51MB
Sun Java SE Runtime Environment 6 Update 13 for 64-bit X86 Linux (RPM bin):
18.20MB
Difference = 54.31MB
Disk Resident Difference = something more (not hugely more) than 54.31MB
Memory and CPU Resource Consumption Difference (for runtime function) =
zero
In other words, yes, the JDK consumes more disk space compared to the JRE.
But that's the only difference (if you're using only the runtime
functions). And "some tens of megabytes" isn't all that big nowadays -- we
live in a world with different (progressively higher) constraints. Also, if
IBM only distributes the JDK, that simplifies maintenance and support for
both IBM and field installations. Maintenance/support costs are non-zero --
and (one assumes) easily outweigh the disk space difference. Also, many
mainframe customers insist on (re)compiling from source directly on the
mainframe as part of their code deployment and governance requirements --
mainframe-class security practices and all. This is probably common enough
that a JDK-only packaging strategy for z/OS makes even more sense.
[Basically the ratio of JDK-function users to JRE-only function users is
much higher on z/OS than it would be on, say, Microsoft Windows. You're not
likely only needing a Web browser Java plug-in for z/OS. :-)]
Also, there are advantages to cutting down on packaging variations to
benefit areas like software product testing. Vendors don't have to worry
about JRE versus JDK, and they can rely on the JDK being present for steps
like installation scripts, ongoing product patching and maintenance
service, etc. They can also rely on the fact that javac is always available
in any situation, without having to complicate disaster recovery planning,
for example. ("Hey, where is javac so I can patch that Java program and
keep my business running....") Said another way, the JDK is the JRE in
certain respects on z/OS -- it's a more appropriate lowest common
denominator for z/OS software vendors.
Yet another difference is that there are already two JDKs distributed for
z/OS for each JDK version: 31-bit and 64-bit. IBM could change its mind and
combine the JDK packaging into a single distribution containing both 31-bit
and 64-bit JDKs. Might even be a good idea. But that would increase disk
space requirements for 31-bit only or 64-bit only users. So you might be
saving disk space already, just in another way. :-)
If the disk space remains a concern, in principle you could delete
unnecessary zFS (or HFS) files. I don't recommend that, but it can be done.
You could run an in-house post-installation job to do that. Is it worth it,
though?
- - - - -
Timothy Sipples
IBM Consulting Enterprise Software Architect
Based in Tokyo, Serving IBM Japan / Asia-Pacific
E-Mail: [email protected]
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html