2012-04-04 3 views
1

Ich arbeite an einem Java-IDE (die IDE selbst ist in Java geschrieben, nicht Eclipse-Umgebung), die derzeit ecj im Backend zum Kompilieren von Java-Quelldateien verwendet. Ich habe herum getwittert, um zu sehen, wie ich ecj mit dem jdt-Kern ersetzen könnte, da ich einige erweiterte Funktionen von jdt-Kernkomponenten wie ast-parser, incremental compile usw. verwenden möchte. Ich ersetzte ecj.jar durch org.eclipse.jdt .core_3.7.1.XXXXX.jar, hat einige Klassenpfade aktualisiert und die ID mit ant rekonstruiert. Nun, wenn ich eine Java-Quelldatei aus der IDE zu kompilieren, erhalte ich:Wie man jdt core anstelle von ecj für Batch Compilation verwendet

java.lang.NoClassDefFoundError: org/eclipse/jdt/core/compiler/batch/BatchCompiler 

ich die IDE Classpath aktualisiert habe das jdt.core Glas statt ecj aufzunehmen, und jdt Kern eindeutig enthält die Batch-Compiler. Also was fehlt mir? Benötigt der jdt.core zusätzliche Abhängigkeiten zum Kompilieren von Java-Quelldateien? Oder ist es eine schlechte Idee, jdt.core statt ecj in einer Nicht-Eclipse-Umgebung zu verwenden?

Antwort

0

Ich habe die Lösung gefunden. Der Klassenpfad des Startprogramms musste aktualisiert werden. JDT-Core funktioniert gut.

Verwandte Themen