Prise en java.lang.NoClassDefFoundError tout en utilisant Google Gson bibliothèque
Je suis en utilisant Gson library
pour convertir les objets à Json
et vice versa. J'ai copié le jars
de la bibliothèque dans un nouveau dossier lib
et de l'ajouter à la build path du projet dans ma Eclipse IDE
.
J'ai une classe principale où je convertir un objet en Json à l'aide de toJson()
indiqué ci-dessous et de l'envoyer à un servlet
à l'aide de Apache HttpClient's HttpPost()
.
Gson gson= new Gson();
String json = gson.toJson(names);
Mais dans le servlet
je ne suis pas en mesure de convertir les Json
en Object
à l'aide de fromJson()
lorsque j'exécute le code suivant.
Gson gson = new Gson();
Names names = gson.fromJson(s, Names.class);
C'est jeter l'exception suivante:
java.lang.NoClassDefFoundError: com/google/gson/Gson
Aucune idée de pourquoi cela se produit peut-être? Si j'ai copié le jars
dans le WebContent/WEB-INF/lib
dossier au lieu d'un nouveau dossier appelé lib
?
Avez-vous ajouter
gson.jar
à votre build path (chemin de classe) ?J'ai ajouté
gson-2.2.2.jar
. Ce qui est étrange m'est Gson
est résolu dans une classe mais pas dans l'autre classe(Servlet).fournir erreur trace de la pile
Qu'est-ce que
s
dans fromJson
appel. Je doute de son à cause de cela. Vérifiez si elle n'est pas NULLOriginalL'auteur Rajath | 2012-10-09
Vous devez vous connecter pour publier un commentaire.
Ok, j'ai compris la réponse à l'aide de ce post. Lisez les commentaires dans la première réponse.
Je suis "de java.lang.ClassNotFoundException: com.google.gson.Gson" erreur, même si elle est définie dans mon classpath
J'ai juste eu à la place externes
jars
dans monWebContent/WEB-INF/lib
dossier etEclipse
prendrait soin de labuild path
lui-même.java.lang.NoClassDefFoundError
etjava.lang.ClassNotFoundException
sont des choses différentes.Je l'ai eu à la fois le type des exceptions lorsque j'ai exécuté les différentes Dynamiques de Projets Web avec le même code. Mais merci! Prendra en note.
OriginalL'auteur Rajath