4

クラスで次のインポートを行いたい。

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 をインポートするにはどうすればよいですか? 乾杯。

4

4 に答える 4

15

これを行うためのより簡単な方法を見つけたと思います:

  • Package Explorer でプロジェクトを右クリックします。
  • 「ビルドパス...」を選択します。
  • 「ビルドパスの構成」を選択します。
  • [ライブラリ] タブを選択します。
  • [変数を追加...] ボタンをクリックします。
  • リストボックスで「ECLIPSE_HOME」エントリを選択し、「拡張」ボタンをクリックします。
  • リスト ボックスで「plugins」フォルダ エントリを開き、下にスクロールして、フォルダの下のファイル リストにあるすべての org.eclipse.jdt.* JAR ファイルを Shift キーを押しながらクリックします。
  • 完全に戻るまで [OK] をクリックします。

それはそれを行う必要があります。

于 2008-09-18T18:29:41.117 に答える
3

誤解していない限り、クラスパスに JDT JAR ファイルを含める必要があるだけです。それらはすべて、Eclipse プラグイン ディレクトリで利用できます。そのため、プロジェクトについては、パッケージ エクスプローラーでプロジェクトの名前を右クリックし、[ビルド パス] サブメニューに移動して、[ビルド パスの構成] を選択します。次に、「ライブラリー」タブで、「外部 JAR の追加」ボタンを使用して、関連する各 JAR ファイルを Eclipse プラグイン・ディレクトリーから追加します。

于 2008-09-18T15:53:02.867 に答える
2

Eclipse用のプラグインを作成している場合は、実際にinternalパッケージをインスタンス化しようとしてはいけません。このAPIのRulesofEngagementによると、

公式に文書化されたAPIに固執します。コンポーネントの公開APIJavadocに記載されているパッケージのみを参照してください。名前に「内部」が含まれる別のコンポーネントに属するパッケージを参照しないでください---これらはAPIではありません。公開されているAPIJavadocがないパッケージを参照しないでください---これらもAPIではありません。

Import-Packageその他の場合は、マニフェストのエントリにパッケージ名を追加します。

JDTには拡張ポイントがありますが、あなたがやりたいことがこれらの範囲外にある場合は、運が悪いのではないかと思います。

JDK(つまりJRE)に依存せずに、コードでコンパイラーを使用することだけを検討している場合は、JaninoのようなよりスタンドアロンのJavaベースのJavaコンパイラーを同梱することを検討します。

于 2009-01-18T00:32:07.767 に答える
1

これらのクラスが必要な場合は、おそらくすでにプラグインプロジェクトに参加しています。Eclipseがインポートについて不平を言っている行にクイックフィックス「Fixprojectsetup...」(Ctrl + 1)を適用することで、これらのクラスをインポートできるはずです。これにより、必要なプラグインがMETA-INFディレクトリ(この場合はorg.eclipse.jdt.coreおよびorg.eclipse.jface.text)のMANIFEST.MFファイルに追加されます。MANIFEST.MFファイルに手動で追加することもできます。プロジェクトがプラグインプロジェクトではない場合(およびMANIFEST.MFファイルがない場合)、最初にプロジェクト->PDEツール->プロジェクトをプラグインプロジェクトに変換を右クリックして変換できます。通常の方法(「ビルドパスの構成」)でプラグインプロジェクトに依存関係を追加すると、クラスローディングは実行時に正しく機能しません(コンパイルはされますが)。

于 2008-09-18T19:47:51.927 に答える