Eclipseワークスペースにプロジェクトがあります。
次のコードを使用してこのプロジェクトをIJavaProjectとして開くと、プロジェクトが「開かない」状態になります。
IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
IProject orig = root.getProject(this.projectName);
orig.open(null /* IProgressMonitor */);
orig.refreshLocal(IResource.DEPTH_ZERO, null);
this.javaProject = JavaCore.create(orig);
IProject withメソッドを開き、「リソースがファイルシステムと同期していない」という回避策を使用しopen()
て手動で更新しました。refreshLocal
他のリソースが開かれていません。
「F5」でプロジェクトを更新してみましたが、うまくいきません。
何が悪いのでしょうか?リソースを開くにはどうすればよいですか?
追加した
新しいNullProgressMonitor()でリソースを開こうとしましたが、機能しませんでした。
orig.open(new NullProgressMonitor());
orig.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
追加2
javaModelを使用するこのコードを使用して、ワークスペース内のすべてのプロジェクトが閉じられているという情報を取得しました。これは私のワークスペースが壊れていることを意味しますか?Eclipse IDEを使用してワークスペースを開くと、Javaコードを開いてコンパイルできました。
IJavaModel javaModel = JavaCore.create(root);
this.javaProject = javaModel.getJavaProject(this.projectName);