I'd like to know if there is a maximum number of files allowed per jar, after which you can have classpath issues like classes not taken into account?
A JAR file is essentially a zip file that contains an optional META-INF directory. A JAR file can be created by the command-line jar tool, or by using the java. util. jar API in the Java platform.
JAR stands for Java ARchive. It's a file format based on the popular ZIP file format and is used for aggregating many files into one. Although JAR can be used as a general archiving tool, the primary motivation for its development was so that Java applets and their requisite components (.
Jar files can contain only one Main-Class attribute in the manifest, which means a jar can contain only one mainClassName.
The JAR file contains the TicTacToe class file and the audio and images directory, as expected. The output also shows that the JAR file contains a default manifest file, META-INF/MANIFEST. MF, which was automatically placed in the archive by the JAR tool.
The jar format is just a rebranded zip format, so it inherits the limitations of that format.
The original zip format has a limit of 65535 entries, so in total in Java 6 and earlier, you can have at most that many classes or other files, combined. Many tools also include directories as entires, and this reduces the entires available for classes and other files.
In java 7, zip64 is supported, with a much higher limit.
I suspect the failure mode, however, won't be randomly missing files, but failure at jar generation time.
A .jar file is really just a .zip file with a special manifest. So the limits are the same as for .zip files
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With