2013-09-16 6 views
6

Ich hatte ein perfekt laufendes Eclipse-Projekt mit Maven und Projektabhängigkeiten. Jetzt möchte ich zu IntelliJ IDEA wechseln - der Import meiner Projekte funktionierte gut (jetzt Modul mit Maven und Modulabhängigkeiten genannt), die gesamte Maven-Konfiguration schien aus der Box zu funktionieren (kann Bibliotheken erweitern und Quellcode sehen). Wenn ich mein Modul laufen bekomme ich:IntelliJ NoClassDefFoundError für jar Abhängigkeiten in anderen Modulen

Exception in thread "main" java.lang.NoClassDefFoundError: com/thoughtworks/xstream/XStream 

Von einem abhängigen Modul xstream-1.4.2.jar ist korrekt in dem Build-Pfad des Moduls.

Was ich versucht und hat nicht funktioniert:

  • Importieren von Projekten als Eclipse-Projekte, die Anwendung Maven Natur/framework Unterstützung danach
  • Importieren von Projekten wie Maven Projekte
  • Invalidate-Caches
  • Maven Reimport & Quellen generieren und Ordner aktualisieren

Was? hat funktioniert, ist aber keine Lösung: Ich kann die Xstream-1.4.2.jar zu den Abhängigkeiten des Moduls, das ich gerade laufe, hinzufügen, aber dann scheitert es mit dem nächsten fehlenden Jar. Es scheint also so, als ob die in referenzierten Modulen referenzierten Gefäße nicht gefunden werden.

Oft trifft man auf NoClassDefFoundError, wenn es zwei Klassen in verschiedenen Versionen auf dem Klassenpfad gibt - ich habe es überprüft, es gibt nur eine xstream * .jar-Datei dort.

Ich schätze jede Hilfe.

Danke, Marcel

+1

Bugreport mit einem Beispielprojekt zu reproduzieren ist willkommen auf http://youtrack.jetbrains.com/issues/IDEA. – CrazyCoder

+1

Was meinen Sie mit "xstream-1.4.2.jar ist korrekt im Build-Pfad dieses Moduls" - ist es ein Maven in diesem Modul pom.xml? – vikingsteve

+0

Welchen Klassenpfad weisen Sie Ihrer Laufkonfiguration zu? – Tome

Antwort

0

Ist xstream-1.4.2.jar in der richtigen groupid/artificatid gelegen/1.4.2/Ordner unter .m2 Repository?

Wenn Sie auf Linux ausführen, wird .m2 unter /home//.m2 befinden Wenn Sie unter Windows ausführen, wird .m2 Ordner unter C befinden: \ Benutzer \ .m2

Verwandte Themen