A special type of jar file which contains all non-standard libraries and definitions necessary to run an application on a JVM.
An executable java program which can be started manually by typing java -jar foo.jar
. Some operating systems (including Windows, Solaris and some Linux distributions) provide means to run the jar just as any other executable on that system.
Executable JAR files are distinguished by a 'extra field' on the first file with a hexadecimal field code of 0xCAFE. They must also specify a main class in the manifest (Main-Class: fooPackage.BarClass
) which will be used to start the application.