There are two kinds of sections in a manifest file: the main section and the individual section.
Entries in the main section apply to the entire JAR file.
Entries in the individual section apply to a particular entry.
An attribute in an individual section overrides the same attribute in the main section.
An individual entry starts with a "Name" attribute, whose value is the name of the entry in the JAR file and it is followed by other attributes for that entry.
For example, suppose you have a manifest file with the following contents:
Manifest-Version: 1.0 Created-By: 1.6.0 (Sun Microsystems Inc.) Main-Class: com.book2s.chapter2.Welcome Sealed: true Name: book/data/ Sealed: false Name: images/logo.bmp Content-Type: image/bmp
The manifest file contains three sections: one main section and two individual sections.
A blank line is between the two sections.
The first individual section indicates that the package book/data is not sealed.
This individual section attribute of "Sealed: false" will override the main section's attribute of "Sealed: true".
Another individual section is for an entry called images/logo.bmp. It states that the content type of the entry is an image of bmp type.
The jar command can create a default manifest file and add it to the JAR file.
The default manifest file contains only two attributes: Manifest-Version and Created-By.
You can use the option M to tell the jar tool to omit the default manifest file.
The following command will create a test.jar file without adding a default manifest file:
jar cMf test.jar book/*.class