web-dev-qa-db-ja.com

プロジェクト外のファイルについて、JavaでファイルからIFileに変換する方法は?

通常、このコードはFileからIFileへの変換に使用されます。

IWorkspace workspace= ResourcesPlugin.getWorkspace();    
IPath location= Path.fromOSString(file.getAbsolutePath()); 
IFile ifile= workspace.getRoot().getFileForLocation(location);

ただし、これはプロジェクト内のJavaファイルに対してのみ機能します。IFileファイルがワークスペースにない(プロジェクトにない)場合、どうすればFileを取得できますか? ?

24
Jenny Smith

Eclipse ASTフレームワークからのバインディング解決を使用するためにこれが必要でした。しかし、明らかに、これは不可能です-それを必要とする人は、このサイトをチェックしてください:

https://bugs.Eclipse.org/bugs/show_bug.cgi?id=206391

3
Jenny Smith

IResourceとその子IFileは元々、ワークスペースにあるリソースにのみ使用することを目的としていました。 Javadoc for IResource を参照してください。

ただし、Eclipse 3.3以降、外部ファイルもサポートされています。 このEclipse Wikiページ を参照してください。

9
Zsolt Török