Error del compilador "archivo para la biblioteca requerida no se pudo leer" - Spring Tool Suite


Estoy empezando a configurar mi entorno de desarrollo y estoy usando Spring Tool Suite 2.8.1 junto con m2E 1.01.

Por lo que puedo decir, ya que este es un proyecto Maven (mi primer), mi POM Maven está dictando (junto con M2e smarts) mi configuración de compilación del proyecto y las dependencias.

Lo que me gustaría saber es por qué mi IDE está mostrando problemas de compilación de Java que dicen "Archive required for library library/path/somejar.jar no se puede leer o no es un zip válido archivo " cuando pueda ver los frascos en mi .m2 repositorio?

Todos los errores pertenecían a commons-logging:1.1.1 que excluí en mi padre-pom. Esta fue una dependencia transitiva a través de spring-context-support: 3.0.5. Excluí esa biblioteca de mi compilación y ahora los errores pertenecen a la biblioteca spring-context-support..

He adjuntado una captura de pantalla para ilustrar.

Marcador

Muchas gracias

Author: totalcruise, 2012-01-14

15 answers

De hecho, los IDE a menudo almacenan en caché el repositorio local (Eclipse hace algo similar, y tengo que relanzar Eclipse).

Un feo comportamiento de maven que puede encontrar es que si declara una dependencia antes de instalarla, maven creará una versión vacía de la dependencia faltante (carpeta con metadatos pero sin jar), y tendrá que limpiar manualmente su .repositorio m2.

Tercero, un archivo instalado (jar...) puede corromperse, así que trate de abrirlo con cualquier archivo herramienta (7zip...) para probarlo, y eliminar toda la carpeta si el archivo está dañado.

 80
Author: Samuel EUSTACHI,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-12 12:03:34

En mi caso tuve que eliminar manualmente todos los archivos en la carpeta .m2\repository y luego abrir el símbolo del sistema y ejecutar el comando mvn -install en el directorio de mi proyecto.

 16
Author: intersum,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-04-22 14:46:03

Estaba usando Eclipse como IDE y estaba recibiendo el mismo error. Tuve que hacer Proyecto - > Maven - > Proyecto de actualización. Seleccione todas las casillas de verificación a continuación, excepto" offline " esp. el "Forzar actualización de snapshots / releases" y haga clic en Aceptar. Hice la Construcción Limpia para el Proyecto de nuevo.

 9
Author: Gopal Bairwa,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-06 17:32:13

Elimine los archivos dañados de su local .repositorio m2 y Ctrl+F5 (Actualización del Proyecto Maven) en Eclipse/STS. Descargará e instalará estos archivos.

 4
Author: kolobok,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-06 17:18:48

Para Googlers:

En mi caso, accidentalmente agregué manualmente una clase Java a la ruta de compilación mientras exploraba Eclipse. Echando un vistazo a la 'Configurar ruta de compilación...> Bibliotecas Eliminé la clase culprit y ahora solo tengo el

  • Biblioteca del Sistema JRE
  • Dependencias Maven

Y nada se queja.

 2
Author: HoppyKamper,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-07-30 19:20:50

Esto funcionó para mí.

  1. Cerrar Eclipse
  2. Borrar ./m2 / repository
  3. Open Eclipse, descargará automáticamente todos los frascos
  4. Si aún persiste el problema, haga clic con el botón derecho en proyecto > Maven > Actualizar proyecto... > Marque 'Forzar actualización de Snapshots / Releases'
 2
Author: Kaushal Dokania,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-25 07:42:45

En mi caso probé todos los consejos sugeridos, pero el error se mantuvo. Resolví cambiar con una versión más reciente y escribirlo en el pom.XML. Después de esto todo está bien.

 1
Author: enri,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-06-08 11:50:09

He eliminado el repositorio maven local. A continuación, haga clic en el proyecto -> Maven -> Actualizar Proyecto... Seleccione todos los proyectos en cuestión y haga clic en Aceptar.

 1
Author: PrestigeDev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-11-03 14:30:46

Esto podría deberse a que ha agregado spring-licence.archivo txt a sus bibliotecas de aplicaciones web.

Tuve un problema similar y se resolvió después de eliminar ese archivo de texto. en las bibliotecas esperará solo el archivo jar.

Gracias, Channa.

 0
Author: CHANNA MALLAIAH UDDANDAIAHGARI,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-08-25 04:49:08

Remove maven dependenices from build path

 0
Author: basavaraj N,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-02-08 03:25:59

Me enfrenté a este problema. Tenía "Archive for required library spring-boot-devtools cannot be read or is not a valid ZIP file" y la solución era así:- 1-determinar los nombres de dependencias que tienen problemas (para may case es spring-boot-devtools). 2-cerrar eclipse. 3 - buscar en su .archivo m2 en estas dependencias (por nombre). 4 - eliminar estas carpetas. 5-vuelve a abrir eclipse y deja que maven reconstruya tus dependencias de nuevo.

 0
Author: Abdollah Sobhy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-06-16 11:05:21

Ok, tuve el mismo problema con STS en un mac y lo resolví eliminando todos los archivos en la carpeta del repositorio y desde el IDE de STS, haga clic en el proyecto y luego Maven -> Actualizar proyecto. Dale un par de minutos para descargar todas las dependencias y el problema está resuelto.

 0
Author: AlketCecaj,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-22 13:11:31

Me enfrento al mismo problema. He eliminado el repositorio local y relanzó el ID. Funcionó bien .

 0
Author: Sameer Desai,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-02-17 07:30:48

Acabo de tener este problema en Indigo SR2. Apareció después de que eliminé un tarro superfluo del classpath (ruta de construcción). Reiniciar Eclipse no ayudó. Añadido de nuevo el frasco a la ruta de construcción...el error desapareció. Retira el frasco una vez más, y esta vez me salvé de otra queja.

 0
Author: elder elder,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-02-23 12:53:57

Ninguna de las soluciones anteriores ayudó a mi problema. Lo he resuelto eliminando todos los archivos en {projectworkspace}/.carpeta de metadatos Y en {location}/.m2 folder y deja que eclipse descargue cada cosa de nuevo. Espero que esto ayude a alguien, salud!

 0
Author: vibetribe93,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-06 23:03:53