La implementación del proyecto Maven arroja java.util.zip.ZipException: encabezado LOC no válido (firma incorrecta)

mvn install la siguiente excepción cuando ejecuto mi mvn install . Incluso he eliminado el repository local y volví a ejecutar obteniendo la misma excepción.

[ERROR] No se pudo ejecutar el objective org.apache.maven.plugins: maven-shade-plugin: 2.1: shade (predeterminado) en los núcleos del proyecto por lotes: Error al crear el shaded jar: header del LOC no válido (bad signature) -> [Help 1 ]

   org.apache.maven.plugins maven-shade-plugin 2.1  true    package  shade     commons-logging:commons-logging:jar:*     *:*   META-INF/*.SF META-INF/*.DSA META-INF/*.RSA  log4j.xml       META-INF/spring.handlers   META-INF/spring.schemas       

Error:

 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:2.1:shade (default) on project cores-batch: Error creating shaded jar: invalid LOC header (bad signature) -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:2.1:shade (default) on project cores-batch: Error creating shaded jar: invalid LOC header (bad signature) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) Caused by: org.apache.maven.plugin.MojoExecutionException: Error creating shaded jar: invalid LOC header (bad signature) at org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:528) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) ... 19 more Caused by: java.util.zip.ZipException: invalid LOC header (bad signature) at java.util.zip.ZipFile.read(Native Method) at java.util.zip.ZipFile.access$1400(ZipFile.java:56) at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:679) at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:415) at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158) at java.io.FilterInputStream.read(FilterInputStream.java:107) at org.codehaus.plexus.util.IOUtil.copy(IOUtil.java:189) at org.codehaus.plexus.util.IOUtil.copy(IOUtil.java:175) at org.apache.maven.plugins.shade.DefaultShader.addResource(DefaultShader.java:427) at org.apache.maven.plugins.shade.DefaultShader.shade(DefaultShader.java:186) at org.apache.maven.plugins.shade.mojo.ShadeMojo.execute(ShadeMojo.java:458) ... 21 more [ERROR] [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException 

Debe verificar qué jarro está generando problemas. Debe estar dañado. Borre ese jar y ejecute mvn spring-boot:run comando nuevamente. Puede haber más de un jar dañado, por lo que cada vez que necesita ejecutar ese comando para eliminar ese jar. En mi caso, mysql, jackson, aspect jars fue corrompido mvn spring-boot:run comando 3 veces y me .m2 esto y .m2 los flasks de la carpeta .m2 . Ahora el problema ha sido resuelto

El archivo jar puede estar dañado. Intente eliminar el contenido de la siguiente carpeta:

  C:\Users\[username]\.m2\repository 

A continuación, haga clic con el botón derecho en su proyecto, seleccione Maven, Update Project, marque Forzar actualización de snapshots / releases.

El problema principal son las jarras corruptas.

Para encontrar el corrupto, necesita agregar un Punto de interrupción de excepción de Java en la Vista de puntos de interrupción de Eclipse o su IDE preferido, seleccionar la clase java.util.zip.ZipException y reiniciar la instancia de Tomcat.

Cuando la JVM se suspende en el ZipException corte ZipException , debe ir a JarFile.getManifestFromReference() en el seguimiento de la stack y verificar el name atributo para ver el nombre del archivo.

Después de eso, debe eliminar el archivo del sistema de archivos y luego hacer clic derecho en su proyecto, seleccionar Maven, Actualizar proyecto, verificar en Forzar actualización de instantáneas / versiones.

Desde gsitgithub / find-currupt-jars.txt , el siguiente comando enumera todos los archivos jar dañados en el repository:

 find /home/me/.m2/repository/ -name "*jar" | xargs -L 1 zip -T | grep error | grep invalid 

Puede eliminar los archivos jar corruptos y volver a comstackr el proyecto.

Ejemplo de salida:

 warning [/cygdrive/J/repo/net/java/dev/jna/jna/4.1.0/jna-4.1.0.jar]: 98304 extra bytes at beginning or within zipfile (attempting to process anyway) file #1: bad zipfile offset (local header sig): 98304 (attempting to re-compensate) zip error: Zip file invalid, could not spawn unzip, or wrong unzip (original files unmodified) 

Me gustaría darle mi práctica.

Use su IDE preferido, tome eclipse por ejemplo aquí:

  1. Encuentra una ubicación adecuada dentro de la stack de excepciones
  2. Establecer punto de interrupción condicional
  3. Depurarlo
  4. Imprimirá el jar corrupto antes de la excepción

enter image description here

La solución para mí fue ejecutar mvn con -X :

 $ mvn package -X 

Luego mire hacia atrás a través de la salida hasta que vea la falla y luego continúe hasta que vea el último archivo jar que mvn intentó procesar:

 ... ... <> ... [DEBUG] Processing JAR /Users/snowch/.m2/repository/org/eclipse/jetty/jetty-server/9.2.15.v20160210/jetty-server-9.2.15.v20160210.jar [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 3.607 s [INFO] Finished at: 2017-10-04T14:30:13+01:00 [INFO] Final Memory: 23M/370M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:3.1.0:shade (default) on project kafka-connect-on-cloud-foundry: Error creating shaded jar: invalid LOC header (bad signature) -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:3.1.0:shade (default) on project kafka-connect-on-cloud-foundry: Error creating shaded jar: invalid LOC header (bad signature) 

Mire el último contenedor antes de que fallara y elimínelo del repository local, es decir,

 $ rm -rf /Users/snowch/.m2/repository/org/eclipse/jetty/jetty-server/9.2.15.v20160210/ 

Parece un problema de configuración para el comstackdor de maven en su archivo pom. La versión por defecto de origen y destino de Java es 1.5, incluso JDK utilizado tiene una versión más alta.

Para solucionarlo, agregue la sección de configuración del plugin de comstackción de maven con una versión java más alta, por ejemplo:

  org.apache.maven.plugins maven-compiler-plugin 3.6.1  1.6 1.6   

Para obtener más información, consulte estos enlaces:

comstackdor de maven

informe de error

Estaba enfrentándome a este problema que estaba afectando mi oído a mi instancia weblogic local. Limpiar el repository local y construir el oído nuevamente resolvió el problema para mí.

“Identificador de LOC no válido (firma incorrecta)”
Es probable que esto se deba a archivos dañados que Maven descargó. Solución rápida, recomiendo realizar una copia de seguridad del directorio .m2 / repository y eliminar el directorio .m2 / repository , luego realizar una reconstrucción o Maven-Update.

la mayoría de las veces esto sucede debido a los zars corruptos actualizando la URL del repository central de maven en el archivo pom.xml. Solucionado mi problema. Puedes usar esta url https://repo.maven.apache.org/maven2/ pero antes de eso borra los archivos en el directorio .m2 espero que esto ayude

Construya el proyecto con la opción “-e-X” para descubrir el jar corrupto y eliminar el jar del repository local.

Esto puede deberse a muchas razones:

1: Intente cambiar su versión Web.XML

2: el Frasco que está tratando de usar puede estar dañado. Por ejemplo: use una versión diferente para el tarro de Maven

Además de eliminar .m2 / repository, elimine la aplicación del servidor, ejecute el servidor (sin aplicaciones), deténgalo y agregue la aplicación nuevamente. Ahora se supone que debe funcionar. Por alguna razón, simplemente limpiar las carpetas del servidor de la interfaz no tiene el mismo efecto.

Es principalmente causada por maven. Si está usando IDEA, intente estos siguientes pasos:

1.utiliza IDEA para ejecutar “maven clean”, luego verás

  [INFO] Scanning for projects... [WARNING] [WARNING] Some problems were encountered while building the effective model for com.hisen:BookSystem_V0:war:1.0-SNAPSHOT [WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-compiler-plugin is missing. @ line 116, column 15 [WARNING] [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build. 

reemplace el tarro equivocado

2. usa IDEA para ejecutar “comstackción de maven”, entonces verás

 [INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] Failure executing javac, but could not parse the error:错误: 读取/Users/qinkai/.m2/repository/ch/qos/logback/logback-classic/1.1.1/logback-classic-1.1.1.jar时出错; invalid LOC header (bad signature)错误: 读取/Users/qinkai/.m2/repository/ch/qos/logback/logback-core/1.1.1/logback-core-1.1.1.jar时出错; invalid LOC header (bad signature) 2 个错误 

resolver el jar incorrecto

entonces el problema será resuelto

Esta respuesta no es para DevOps / administradores de sistemas, sino para aquellos que están usando IDE como eclipse y enfrentan invalid LOC header (bad signature) .

Puede forzar la actualización de las dependencias maven, de la siguiente manera:

enter image description here

enter image description here

    Intereting Posts