58 votes

Apache POI error lors du chargement de la classe XSSFWorkbook

J'essaie d'écrire un programme qui fonctionne avec des documents Excel, mais le format HSSF est trop petit pour mes besoins. J'essaie de passer à XSSF, mais je continue à avoir des erreurs en essayant de l'utiliser.

J'ai réussi à résoudre les deux premiers problèmes en ajoutant xmlbeans-2.3.0.jar et dom4j-1.6.jar à mon programme, mais cette erreur est en train de se produire, problème qui ne semble pas être résolu en ajoutant le fichier java Apache commons disponible sur le site Apache.

L'erreur est la suivante:

 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections4/ListValuedMap
    at hot.memes.ExcelCreator.main(ExcelCreator.java:66)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections4.ListValuedMap
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 1 more
 

52voto

lucky sharma Points 385

Ajoutez le fichier commons-collections4-xxjar dans votre chemin de construction et essayez-le à nouveau. Ça va marcher.

Vous pouvez le télécharger à l' adresse https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.0

31voto

Anshu kumar Points 309

commons-collections4-xxjar résout définitivement ce problème, mais Apache a supprimé l'interface ListValuedMap de commons-Collections4-4.0.jar, utilisez donc la version mise à jour 4.1 qui contient les classes et les interfaces requises.

Reportez-vous ici si vous souhaitez lire Excel (2003 ou 2007+) à l'aide de code java.

http://www.codejava.net/coding/how-to-read-excel-files-in-java-using-apache-poi

18voto

Bharath Nadukatla Points 111

Hourra! L'ajout de fichiers jar de commons-collections à mon projet a résolu ce problème. Coup de pouce à Lucky Sharma.

Solution: ajoutez le fichier commons-collections4-4.1.jar dans votre chemin de génération et réessayez. Ça va marcher.

Vous pouvez le télécharger à l' adresse https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.1

13voto

HopeKing Points 952

Veuillez noter que 4.0 n'est pas suffisant depuis que ListValuedMap a été introduit dans la version 4.1.

Vous devez utiliser ce lien de référentiel maven pour la version 4.1. Reproduit ci-dessous pour plus de commodité

  <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 -->
 <dependency>
   <groupId>org.apache.commons</groupId>
   <artifactId>commons-collections4</artifactId>
   <version>4.1</version>
</dependency>
 

5voto

Swetha Points 41

Oui, nous avons résolu l’exception en ajoutant le fichier jar commons-collections4-4.1 à la variable utilisateur du système CLASSPATH. Téléchargé à partir de https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.1

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X