Java SWT向导对话框未显示在任务栏中

Java SWT向导对话框未显示在任务栏中,java,swt,jface,Java,Swt,Jface,我正在命令行应用程序中创建一个向导对话框,如下所示 最终外壳=新外壳(显示); 向导wiz=new ImportWizard(); WizardDialog=新建WizardDialog(shell,wiz); dialog.create(); dialog.open(); 向导对话框确实显示。但它不会显示在任务栏中。 我也试过了 shell.setVisible(true); dialog.open(); 这使得Shell显示在任务栏中,但在向导后面可以看到Shell窗口 如何解决这个问题

我正在命令行应用程序中创建一个
向导对话框
,如下所示

最终外壳=新外壳(显示);
向导wiz=new ImportWizard();
WizardDialog=新建WizardDialog(shell,wiz);
dialog.create();
dialog.open();
向导对话框确实显示。但它不会显示在任务栏中。 我也试过了

shell.setVisible(true);
dialog.open();
这使得Shell显示在任务栏中,但在向导后面可以看到Shell窗口


如何解决这个问题?

我可以假设,这种行为的原因是
WizardDialog
类只有构造函数提供
Shell
,它最终(在
Dialog
类中)使用
SameShellProvider
作为Shell提供程序。您需要从某个对象继承,在该对象中可以传递您自己的
IShellProvider
,例如
TrayDialog
(或其他合适的类)。

我可以使用以下代码片段解决此问题

向导wiz=new ImportWizard();
WizardDialog=新建WizardDialog(null,wiz);
dialog.create();
dialog.open();

WizardDialog
constructor中以
Shell
的形式传递
null

我不确定是否理解。向导根本不显示,还是在“开始”/“任务栏”中没有自己的图标?向导确实显示,但现在在任务栏中有图标。