返回OK状态后,Eclipse作业将保留在进度视图中

时间:2017-05-23 21:06:29

标签: eclipse eclipse-rcp jobs

我有一个类似于以下内容的Eclipse Job类:

public class MyCustomJob extends Job {
   @Override
   protected IStatus run(IProgressMonitor monitor) {
      MyObject.blockingMethod();
      return Status.OK_STATUS;
   }
}

当我执行此作业并且它正确退出时,在其运行时列出进度的右下角仍显示现在已完成作业的名称,但没有任何进度条。 Lingering Job name

如果我在作业名称仍然存在的区域中双击,则“进度视图”将按预期打开,但会显示作业已完成。如果我点击" x"为了清除这个工作,它会从视图中消失,但如果我关闭视图并重新打开它,它就会回来。 Lingering job in Progress View

如何从显示屏的右下方删除作业名称,并保证如果我从进度视图中清除实际被解雇的完成作业?

1 个答案:

答案 0 :(得分:0)

检查可能影响状态的任何异步UI管理员的返回路径。更改 从:

<Biml xmlns="http://schemas.varigence.com/biml.xsd">
<Connections>
    <OleDbConnection Name="ConnectionWithPractice2" ConnectionString="Provider='SQLNCLI11'; Data Source='DWH'; Initial Catalog='Practice2'; User Id='system'; Password='password';"></OleDbConnection>
    <ExcelConnection Name="Excel Connection Manager" ConnectionString="Provider='Microsoft.Jet.OLEDB.4.0';Data Source='C:\Users\adm-jpna\Documents\ExcelDestination.xls';Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'">
    </ExcelConnection>
</Connections>
<Packages>
    <Package Name="Package1">
        <Tasks>
            <Dataflow Name="ImportIntoExcel">
                <Transformations>
                    <OleDbSource Name="OLE_DB_Source" ConnectionName="ConnectionWithPractice2">
                        <DirectInput>SELECT Street FROM Practice2.dbo.Adress</DirectInput>
                    </OleDbSource>
                    <ExcelDestination Name="Excel_Destination" ConnectionName="Excel Connection Manager">
                        <Columns>
                            <Column SourceColumn="Street"></Column>
                        </Columns>
                        <TableOutput TableName="Adress"></TableOutput>
                    </ExcelDestination>
                </Transformations>
            </Dataflow>
        </Tasks>
    </Package>
</Packages>

Platform.getDefault().asyncExec(runnable)

解决了这个问题