IResourceChangeListener
を使用すると、ある場所から別の場所にプロジェクトが移動したかどうかを検出できないようです。 MoveProjectOperation
で/new/path/to/project
に/old/path/to/project
から、プロジェクトの場所を変更する場合たとえばプロジェクトが新しい場所に移動したときを検出する方法
、イベントの詳細は、次のようになります。
name = project-name
kind = CHANGE
flags = DESCRIPTION
movedFromPath = null
movedToPath = null
location = /new/path/to/project
しかし、プロジェクトの説明は、いくつかのために変更されたときに、同じイベントの詳細が送信されます他の理由。
IResourceDelta::getFlags()
とforum postのJavadocはそこMOVED_FROM
フラグであり、getMovedFromPath()
リソースをから移動した場所のパスを返すことヒントを与えます。しかし、私はそのような出来事を見ませんでした。
プロジェクトが移動されたかどうかを知る方法はありませんか、何か不足していますか?回避策がある場合は、私も頭にうれしいです。
これらの場所は作業領域外にあるため、作業領域の論理的な場所は変更されませんか? –
はい、場所はワークスペースの外にあるかもしれませんが、ワークスペース内にあるプロジェクトが外に出た場合もあります。 –