4

既存のEclipseJavaプロジェクトをワークスペースに自動的にロードして開き、最後にJavaアプリケーションを実行するEclipseプラグインがあります。Javaプロジェクトがワークスペースにすでに存在する場合、プラグインはファイルシステム上のプロジェクトに関連してプロジェクトを更新します。

プラグインの更新のみを行うと正常に機能しますが、プラグインが最初にIProject.create()を呼び出してプロジェクトをインポートし、開いて実行すると、プログラムが見つからなかったことを示すエラーダイアログが表示されます。

IProject.create()とopen()は、長時間実行される操作であると言われています。IProject.create()が終了するまで待ってから、IProject.openを呼び出し、open methdodをコンパイルした後、project.run()メソッドを呼び出す方法はありますか?

4

1 に答える 1

4

IProject#create()IProject#open()は両方ともブロックメソッドであるため、「それらを待つ」ために特別なことをする必要はありません。制御が呼び出しサイトに戻ると、それぞれプロジェクトの作成とオープンが完了します。

プロジェクトには、コンパイルする必要のあるJavaソースが含まれていますか?その場合は、プロジェクトを開いた後、Javaプログラムを実行する前にプロジェクトをビルドする必要があります。これを使用してみてください:

project.build(IncrementalProjectBuilder.FULL_BUILD, monitor);
于 2011-08-24T07:43:03.767 に答える