问题
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.
回答1:
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".
回答2:
You can use JDT Core in the command line. Parsing, AST, rewriting everything can be done without the UI.
回答3:
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 C:\Program Files\eclipse\plugins\
来源:https://stackoverflow.com/questions/2113865/jdt-without-eclipse