And What About This JARDiff Stuff?
JARDiff is a mechanism for updating incrementally JAR files. It is a part of the JNLP specification, but it can be used outside usual JNLP deployment as well. Figure 4 shows its mechanism.
Figure 4 The JARDiff working mechanism.
As discussed, the JARDiff format is a way to perform incremental updates to a JAR file. It consists of a special JAR file sent to the client, which describes the differences between two JAR filesOldJAR and NewJAR, for example.
The differencing information is stored in the META-INF/INDEX.JD text file, which describes the copies of new or changed files in the NewJAR file relative to the OldJAR file.
The file is composed of lines <command> space <value>. The first line describes the JARDiff format version (currently 1.0):
And following are lines of two types:
remove <fully qualified class in OldJar but not in NewJAR> move <fully qualified class in OldJAR> <fully qualified class in NewJAR >.
They describe the differences between the already installed OldJAR file and the to-be-installed NewJAR file.
The following sections summarize the pros and cons of using JNLP.