2012-03-08 27 views
5

Me gustaría saber si hay un número máximo de archivos permitidos por jar, después del cual puede tener problemas de classpath como clases no tomadas en cuenta?¿Cuál es la cantidad máxima de archivos por jarra?

+0

¿Es esto similar a tu pregunta? http://stackoverflow.com/questions/3057841/too-long-line-in-manifest-file-while-trying-to-create-jar –

+0

no, su enlace está relacionado con classpath longitud –

+0

¿Archivos o clases de Java? – alexvetter

Respuesta

11

El formato jar es solo un formato zip renombrado, por lo que hereda las limitaciones de ese formato.

El formato zip original tiene un límite de 65535 entradas, por lo que en total en Java 6 y versiones anteriores, puede tener como máximo tantas clases u otros archivos combinados. Muchas herramientas también incluyen directorios como entidades, y esto reduce las opciones disponibles para las clases y otros archivos.

En java 7, zip64 es compatible, con un límite mucho más alto.

Sospecho que el modo de falla, sin embargo, no será archivos perdidos al azar, pero falla en el momento de generación jar.

3

Un archivo .jar es realmente solo un archivo .zip con un manifiesto especial. Por lo que los límites son los mismos que para los archivos .zip

  • Hasta Java 6, archivos zip normales son compatibles, con un máximo de archivos tamaño de 4 GB y 65.535
  • De Java 7 en adelante, el formato es Zip64 compatible con algo como 16 exabyte capacity. esto es efectivamente ilimitado para el uso normal con el hardware actual (es aproximadamente el tamaño de todo el contenido en Internet)
Cuestiones relacionadas