2016-06-22 8 views
1

ユーザーがテキストエディタでメニューをクリックしたときにプロジェクトのソースフォルダの場所を取得したい(パッケージパスと選択したファイルのファイル名を抽出する必要があるため)。eclipseプラグインの開発でソースフォルダの場所を取得する方法

プロジェクト名が「UserProject」で、ソースフォルダがsrcの場合プロジェクトとの相対的なソースの場所を「UserProject \ src」として取得する方法はありますか。

私はこのプロジェクトを返し

IPath fullPath = file.getFullPath(); 
String filePath = fullPath.toString(); 

、それを行うために、これを試してみました。しかし、それは "UserProject \ SRC \ SE \ UTIL \ MyClass.java" として、ソースファイルの完全なパスが含まれてい

+0

"filePath"を区切り文字として "src"を使用して分割し、その結果を使用してソースロケーションパスを生成できますか? –

+0

@IshitaSinha srcは、どのプロジェクトでもプラグインとして動作させることを目標としているので、すべてのプロジェクトで同じではありません。これは、ユーザーが好む名前(src、sourceCodeなど)のいずれかです。 – abo

+0

https://stackoverflow.com/questions/37776230/is-it-possible-load-an-eclipse-java-project-using-と非常によく似ています。ヘッドレスモードのJDT/37777685#37777685。 JDTコアAPIを使用します。 – nitind

答えて

0

あなたはファイルのIJavaElementを取得するためのEclipse JDT JavaCore.create(file)コールを使用することができます。

IJavaElementは、多くのJDTクラスの基本インターフェイスに過ぎません。 IJavaElementのタイプを正確に調べる必要があります。ICompilationUnitとなると思いますが、その場合はgetPackageDeclarationsメソッドを使用できます。

0

ていますフォルダ。あなたがソースフォルダを使用する場合は

System.getProperty("user.dir"); 

、あなただけのように行うことができます。

String str = System.getProperty("user.dir") + System.getProperty("file.separator") + "src"; 
+0

System.getProperty( "user.dir");プロジェクトの代わりにEclipseワークスペースの場所を指定します。 – abo

+1

これはEclipseプラグインでは役に立ちません –

関連する問題