私には1つの状況があります。今UIアクセスのEclipseジョブ
public void methodForExecution(){
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView("view_id");
}
、状況は、ジョブがいるProgressMonitorのようなものを開き、:)
private class ExecutionJob extends Job {
public static final String MY_FAMILY = "myJobFamily";
public ExecutionJob(String name) {
super(name);
}
@Override
protected IStatus run(IProgressMonitor monitor) {
monitor.beginTask("executing ...... ", IProgressMonitor.UNKNOWN);
methodForExecution();
monitor.done();
return Status.OK_STATUS;
}
@Override
public boolean belongsTo(Object family) {
return family == MY_FAMILY;
}
}
そして、このmethodForExecution(以下のようなコードをしています 私は、次のコードで1つのEclipseの仕事をしています私の方法は実際にこの仕事の進行モニターの背後にあるUIにアクセスしようとしています。また、進行状況モニタにActiveWorkbenchWindowがないため、NullPointerExceptionが発生します。
このmethodForExecution()を非同期で実行する必要があるため、私はUIJobを使用できません。 誰かがこれを解決するのを手伝ってもらえますか?
UIJobを使用中にこのhttp://stackoverflow.com/questions/19325603/eclispe-does-not-show-progress-bar-of-user-threadsの問題に直面しています – Rajan
あなたが行っていることがすべて表示されている場合ジョブが非常に速く終了し、進行状況バーを表示する時間がありません –
UIJobまたは通常のジョブをいつ使用するかを明示するように答えを更新しました。 –