我有一个在 3.x 中启动的 RCP 应用程序,现在我已经完成了到 4.x 的软迁移。
我需要为最终用户添加命令行参数选项,例如 -version、-help 等。所以当用户myApp -version
在控制台中键入时,它不会启动应用程序,只显示版本号。
谢谢!
我在我的应用程序课上试过这个,
public Object start(IApplicationContext context) throws Exception {
String[] args = Platform.getCommandLineArgs();
int i = 0;
while (i < args.length)
{
if (args[i].equals("-v"))
{
System.out.println("Version ABC");
return IApplication.EXIT_OK;
}
i++;
}
Display display = PlatformUI.createDisplay();
try {
int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
if (returnCode == PlatformUI.RETURN_RESTART)
return IApplication.EXIT_RESTART;
else
return IApplication.EXIT_OK;
} finally {
display.dispose();
}
}
它不会启动 UI,但会启动启动画面。有没有一种方法可以getCommandLineArgs()
在启动画面开始之前放置?
SplashHandler 尝试:我尝试绑定自己的 SplashHandler,但遇到了同样的问题。当我到达 SplashHandler 的 init 方法时,带有初始图像的 shell 已经显示出来,我认为这个 shell 是在我的任何类可以进行更改之前创建的。