我想在课堂上进行以下导入。
import org.eclipse.jdt.core.dom.*;
import org.eclipse.jdt.core.compiler.CharOperation;
import org.eclipse.jdt.core.compiler.IProblem;
import org.eclipse.jdt.internal.compiler.ClassFile;
import org.eclipse.jdt.internal.compiler.CompilationResult;
import org.eclipse.jdt.internal.compiler.Compiler;
import org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies;
import org.eclipse.jdt.internal.compiler.ICompilerRequestor;
import org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader;
import org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException;
import org.eclipse.jdt.internal.compiler.env.ICompilationUnit;
import org.eclipse.jdt.internal.compiler.env.INameEnvironment;
import org.eclipse.jdt.internal.compiler.env.NameEnvironmentAnswer;
import org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
import org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory;
import org.eclipse.jface.text.Document;
import org.eclipse.jface.text.BadLocationException;
import org.eclipse.text.edits.TextEdit;
如何在Eclipse中导入JDT? 欢呼声。
答案 0 :(得分:15)
我想我找到了一种更简单的方法:
应该这样做。
答案 1 :(得分:3)
除非我误解你,否则你只需要在你的类路径中包含JDT JAR文件;它们都在Eclipse插件目录中可用。因此,对于您的项目,在Package Explorer中右键单击项目名称,转到Build Path ...子菜单,然后选择Configure Build Path。然后在Libraries选项卡中,使用“Add External JARs”按钮添加Eclipse插件目录中的每个相关JAR文件。
答案 2 :(得分:2)
如果您正在为Eclipse编写插件,那么您不应该尝试实例化internal
包。根据这个API Rules of Engagement
坚持正式记录的API。仅引用组件的已发布API Javadoc中记录的包。永远不要引用属于其名称中具有“内部”的另一个组件的包 - 这些包绝不是API。永远不要引用没有发布API Javadoc的包 - 这些也不是API。
对于其他人,请将包名称添加到清单中的Import-Package
条目。
JDT有扩展点,但是如果你想做的事情不属于这些,那么我恐怕你运气不好。
如果您只是想在代码中使用编译器而不依赖于JDK(即在JRE上),那么我会考虑使用更加独立的基于Java的Java编译器,如Janino。< / p>
答案 3 :(得分:1)
如果您需要这些类,您可能已经在插件项目中。您应该能够通过在Eclipse抱怨导入的行上应用快速修复“修复项目设置...”(Ctrl + 1)来导入这些类。这会将所需的插件添加到META-INF目录中的MANIFEST.MF文件中(在您的情况下为org.eclipse.jdt.core和org.eclipse.jface.text)。您也可以在MANIFEST.MF文件中手动添加它们。如果您的项目不是插件项目(并且您没有MANIFEST.MF文件),您可以通过右键单击项目来转换它 - &gt; PDE工具 - &gt;首先将项目转换为插件项目。如果以正常方式(“配置构建路径”)向插件项目添加依赖项,则类加载在运行时将无法正常工作(尽管它将进行编译)。