`

eclipse rcp 不能切换工作空间 switch workspace fail

 
阅读更多

解决eclipse rcp 不能切换工作空间/switch workspace fail的问题。

 

今天,准备发布产品IDE的时候,发现一个棘手的问题。rcp程序居然不能切换工作空间。切换工作空间使用的commandid没有错,使用:org.eclipse.ui.file.openWorkspace。

 

最终在eclipse 官方论坛找到答案。解决方法如下:

 

public class Application implements IApplication

{

    private static final String PROP_EXIT_CODE = "eclipse.exitcode"; //$NON-NLS-1$

 

    /*

     * (non-Javadoc)

     * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.

     * IApplicationContext)

     */

    public Object start(IApplicationContext context)

    {

        Display display = PlatformUI.createDisplay();

        try

        {

// 注释的代码是在新建eclipse插件工程的时候生成。

// int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());

// if (returnCode == PlatformUI.RETURN_RESTART) {

// return IApplication.EXIT_RESTART;

// }

// return IApplication.EXIT_OK;

//                      上面的代码改为:

            int returnCode = PlatformUI.createAndRunWorkbench(display,

                    new ApplicationWorkbenchAdvisor());

            if (returnCode != PlatformUI.RETURN_RESTART)

                return EXIT_OK;

            return EXIT_RELAUNCH.equals(Integer.getInteger(PROP_EXIT_CODE)) ? EXIT_RELAUNCH

                    : EXIT_RESTART;

        } finally

        {

            display.dispose();

        }

    }

 

    /*

     * (non-Javadoc)

     * @see org.eclipse.equinox.app.IApplication#stop()

     */

    public void stop()

    {

...

...

    }

}



PS: 切换工作空间只能在导出产品的时候使用。在eclipse下运行,是不能切换工作空间的。

分享到:
评论

相关推荐

    Eclipse RCP.pdf清晰版

    - **WorkSpace(工作空间)**: 存储项目数据和设置的地方,不可被共享。 - **Perspective(透视图)**: 定义了页面布局,通常用于特定的任务或开发阶段。 #### 四、基础知识预备 在深入学习Eclipse RCP之前,建议...

    Eclipse Rcp

    工作区(WorkSpace)在Eclipse启动时需要被指定,并且不能被多个Eclipse实例共享。然而,一个工作区可以被多个工作台窗口(WorkbenchWindow)共享。工作台(Workbench)是Eclipse UI的最高管理者,负责协调和组织...

    Eclipse rcp深入浅出中英文版及配套代码

    通过阅读《Eclipse RCP深入浅出》并结合提供的代码样例,开发者不仅可以学习到Eclipse RCP的基本概念,还能学会如何创建和调试实际的RCP应用程序。这是一本非常实用的参考资料,对于希望在Java桌面应用领域工作的...

    Eclipse RCP 软件打包发布方法

    Eclipse Rich Client Platform (RCP) 是一个强大的框架,用于构建桌面应用程序。它提供了一整套工具和功能,使得开发者可以构建出具有丰富用户界面的应用。在开发完成后,我们需要将这些应用打包并发布,以便用户...

    eclipse rcp应用系统开发方法与实战源代码.zip

    6. **国际化和本地化**:Eclipse RCP支持多语言环境,开发者需要了解如何实现应用程序的国际化和本地化,包括资源文件的处理和语言切换机制。 7. **源代码实践**:压缩包中的源代码提供了实际的开发示例,通过分析...

    EclipseRCP教程

    3. Workbench:Eclipse RCP 的工作台,提供了应用程序的用户界面和交互机制。 4. View:Eclipse RCP 的视图机制,提供了多种视图类型和视图之间的交互机制。 五、Eclipse RCP 的视图机制 Eclipse RCP 的视图机制是...

    eclipse RCP mp3工程

    【标题】"eclipse RCP mp3工程"指的是一个基于Eclipse Rich Client Platform(RCP)构建的专门处理MP3音频文件的应用程序。Eclipse RCP是一个强大的开发框架,允许开发者创建桌面应用,它提供了丰富的用户界面组件和...

    Eclipse RCP培训.zip

    Eclipse Rich Client Platform(RCP)是Eclipse框架下的一个核心组成部分,用于构建桌面应用程序。这个"Eclipse RCP培训.zip"文件很可能包含了关于如何开发基于Eclipse RCP的应用程序的各种教程、示例代码和讲解材料...

    ECLIPSE+RCP应用系统开发方法与实战(PDF 高岗著)

    6. **透视图和工作台**:透视图(Perspective)定义了工作空间的布局,工作台(Workbench)则是整个应用的核心。书中会讲述如何自定义透视图和管理工作台。 7. **国际化和本地化**:Eclipse RCP支持多语言,书中会...

    EclipseRcp 例子程序

    通过对“Eclipse RCP 例子程序”的深入学习和实践,开发者不仅可以掌握Eclipse RCP的基本使用,还能了解到如何构建复杂、可扩展的桌面应用程序。而"Hyperbola"可能是指一个具体的示例项目或者一个用于演示特定功能的...

    eclipse RCP Plug-in开发自学教程.pdf

    eclipse RCP Plug-in开发自学教程 eclipse RCP(Rich Client Platform)是一种基于eclipse的插件式开发平台,允许开发者使用eclipse结构风格设计弹性的可扩展的应用程序。RCP插件式开发方式可以重用eclipse中的方法...

    Eclipse RCP开发详解

    Eclipse Rich Client Platform (RCP) 是一个强大的框架,用于构建桌面应用程序,它基于Java语言并利用了Eclipse IDE的核心技术。Eclipse RCP允许开发者创建功能丰富的、可扩展的应用程序,这些应用程序拥有与Eclipse...

    Eclipse RCP 插件开发指南

    通过使用Eclipse RCP,开发者可以创建高度可定制和扩展的应用程序,这些应用不仅具有强大的功能,而且还能与其他Eclipse插件无缝集成。 ##### Eclipse Workbench Eclipse Workbench 是 Eclipse RCP 的核心组成部分...

    documents about Eclipse RCP

    1. **Eclipse RCP基础**:首先,文章可能会介绍Eclipse RCP的基本概念,包括它的设计理念、架构和主要组件,如工作台(Workbench)、视图(Views)、编辑器(Editors)和透视图(Perspectives)。 2. **插件系统**...

    Eclipse RCP与Spring OSGi技术详解与最佳实践

    12章)系统讲解了Eclipse RCP应用开发的基础知识、Eclipse RCP软件产品各个组成部分的构建方法,以及Eclipse RCP扩展的使用和扩展点的开发,掌握这些技术知识的读者将能构建一个结构完整的Eclipse RCP软件,并解决...

    菜鸟EclipseRCP学习之路

    源码分析是学习过程中不可或缺的一部分,通过查看和理解FileExplorer的源码,新手可以深入理解Eclipse RCP的事件模型、服务注册和查找机制、以及如何利用模型-视图-控制器(MVC)设计模式来组织代码。 最后,...

    Eclipse RCP详细教程

    ### Eclipse RCP 详细教程 #### 1. 富客户端平台 ##### 1.1. 概述 Eclipse RCP(Rich Client Platform)是一种基于Java的框架,它允许开发者构建高度可定制和可扩展的桌面应用。这些应用通常具有丰富的用户界面,...

    Eclipse Rcp comon Navigator demo

    Eclipse RCP(Rich Client Platform)是一个开源框架,用于构建桌面应用程序。Common Navigator是Eclipse RCP中的一个重要组件,它提供了一种通用的资源浏览和管理界面。在本"Common Navigator demo"中,我们将深入...

    Eclipse RCP

    4. **透视图(Perspective)**:透视图是一种组织工作空间的方式,允许用户根据任务或功能需求切换不同的视图布局。例如,开发透视图可以显示源代码编辑器,而调试透视图则会突出显示调试工具。 5. **视图(View)*...

Global site tag (gtag.js) - Google Analytics