The finer the granularity level, the greater are the bandwidth savings we can have. Anyway, a
level of granularity of a file entry inside a JAR file is perfectly suited for most real cases.
As you already imagined, class size counts here. If we created our application as a sin-
gle big class, updating it incrementally via a JARDiff file will be ineffectual.
Instead, orient yourself to design a greater number of smaller classes, as well-known,
common-sense OO practices suggest.
A JARDiff file is a JAR file named “ INDEX.JD ”that contains the new files and an index file in
the META-INF directory, in which all the changes to be performed on the old JAR file are
For more details on JARDiff files, see Appendix B, “JNLP (Java Network Launcher Protocol)
Ve rsions are different from the other attributes (namely OS, architectures, and locales) because
they have a more sophisticated definition.
As we saw in Chapter 9, “The JNLP Protocol,” the version attribute is used to specify a ver-
sion in a JNLP file. This attribute is used in the following elements:
Only for the j2se element is it mandatory to specify a version; for the other JNLP ele-
ments, it is optional.
When specifying a version string in a JNLP, file, we can use one or more versions separated by
a space, like the following: