Some time ago I wrote an Eclipse plugin which makes use of JDT to do some parsing. Now I am thinking of making a command-line version of this app. Naturally, I hope to reuse the parsing code, so I need to get JDT to work outside Eclipse. Is there any way I can accomplish this (maybe build some wrappers, etc)? Are there any ports of the JDT library that provide the same API / functionality but work independently of Eclipse?
Any help will be greatly appreciated. Thanks.
The JDT is divided into two distinct parts. The parsing parts should all be in plugins which have no UI-dependencies at all. I think they do have a dependency on the Eclipse runtime, which means that you more or less need to create a “headless RCP application”.
You can use JDT Core in the command line. Parsing, AST, rewriting everything can be done without the UI.
In order to be able to use AST classes in a stand alone application you have to use such libraries (where xx stands for version):
org.eclipse.core.contenttype_xx.jar org.eclipse.core.jobs_xx.jar org.eclipse.core.resources_xx.jar org.eclipse.core.runtime_xx.jar org.eclipse.equinox.common_xx.jar org.eclipse.equinox.preferences_xx.jar org.eclipse.jdt.core_xx.jar org.eclipse.osgi_xx.jar
If you installed eclipse with JDT all those jars are in eclipse’s plugin folder for example in Windows it could be in