CN107544777B - 用于集成开发环境的工作空间控制方法和装置 - Google Patents

用于集成开发环境的工作空间控制方法和装置 Download PDF

Info

Publication number
CN107544777B
CN107544777B CN201610500086.3A CN201610500086A CN107544777B CN 107544777 B CN107544777 B CN 107544777B CN 201610500086 A CN201610500086 A CN 201610500086A CN 107544777 B CN107544777 B CN 107544777B
Authority
CN
China
Prior art keywords
item
file
project
workspace
entry
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610500086.3A
Other languages
English (en)
Other versions
CN107544777A (zh
Inventor
李明路
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing duxiaoman Youyang Technology Co.,Ltd.
Original Assignee
Shanghai Youyang New Media Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Youyang New Media Information Technology Co ltd filed Critical Shanghai Youyang New Media Information Technology Co ltd
Priority to CN201610500086.3A priority Critical patent/CN107544777B/zh
Publication of CN107544777A publication Critical patent/CN107544777A/zh
Application granted granted Critical
Publication of CN107544777B publication Critical patent/CN107544777B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了用于集成开发环境的工作空间控制方法和装置。所述方法的一具体实施方式包括:获取待加载的工作空间和待加载的至少一个项目的项目名称;对所述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,所述项目包括:项目名称、入口文件和业务文件;在集成开发环境中加载所述工作空间;对所获取的至少一个项目中的每个项目,在所述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件;检测用户对所述工作空间中加载的项目的项目选择操作;响应于检测到所述项目选择操作,将所述项目选择操作所针对的项目作为所述工作空间的当前项目。该实施方式提高了不同团队协作开发过程中的编码效率。

Description

用于集成开发环境的工作空间控制方法和装置
技术领域
本申请涉及计算机技术领域,具体涉及程序设计技术领域,尤其涉及用于集成开发环境的工作空间控制方法和装置。
背景技术
随着计算机技术以及互联网技术的快速发展,出现了具有多种功能的复杂客户端应用。而随着功能的增加,复杂客户端应用的代码量和维护难度都会加大,不利于中大型团队的协作开发。
目前业界在开发协作和业务需求层面,没有既能满足不同产品线的业务需求,又能很好满足不同团队协作开发的解决方案。
发明内容
本申请的目的在于提出一种改进的用于集成开发环境的工作空间控制方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种用于集成开发环境的工作空间控制方法,所述方法包括:获取待加载的工作空间和待加载的至少一个项目的项目名称;对所述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,所述项目包括:项目名称、入口文件和业务文件,其中,所述入口文件为包含主函数的源代码文件,所述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件;在集成开发环境中加载所述工作空间;对所获取的至少一个项目中的每个项目,在所述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件;检测用户对所述工作空间中加载的项目的项目选择操作;响应于检测到所述项目选择操作,将所述项目选择操作所针对的项目作为所述工作空间的当前项目。
第二方面,本申请提供了一种用于集成开发环境的工作空间控制装置,所述装置包括:第一获取单元,配置用于获取待加载的工作空间和待加载的至少一个项目的项目名称;第二获取单元,配置用于对所述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,所述项目包括:项目名称、入口文件和业务文件,其中,所述入口文件为包含主函数的源代码文件,所述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件;第一加载单元,配置用于在集成开发环境中加载所述工作空间;第二加载单元,配置用于对所获取的至少一个项目中的每个项目,在所述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件;第一检测单元,配置用于检测用户对所述工作空间中加载的项目的项目选择操作;当前项目确定单元,配置用于响应于检测到所述项目选择操作,将所述项目选择操作所针对的项目作为所述工作空间的当前项目。
本申请提供的用于集成开发环境的工作空间控制方法和装置,通过获取待加载的工作空间和待加载的至少一个项目,而后在集成开发环境中加载上述工作空间以及至少一个项目中每个项目的项目名称、入口文件和业务文件,最后响应于检测到用户对上述工作空间中加载的项目的项目选择操作,将上述项目选择操作所针对的项目作为上述工作空间的当前项目,提高了不同团队协作开发过程中的编码效率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性***架构图;
图2是根据本申请的用于集成开发环境的工作空间控制方法的一个实施例的流程图;
图3是根据本申请的用于集成开发环境的工作空间控制方法的又一个实施例的流程图;
图4是根据本申请的用于集成开发环境的工作空间控制装置的一个实施例的结构示意图;
图5是适于用来实现本申请实施例的终端设备的计算机***的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于集成开发环境的工作空间控制方法或用于集成开发环境的工作空间控制装置的实施例的示例性***架构100。
如图1所示,***架构100可以包括终端设备101、102,网络103和服务器104。网络103用以在终端设备101、102和服务器104之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102通过网络103与服务器104交互,以接收或发送消息等。终端设备101、102上可以安装有各种客户端应用,例如集成开发环境类应用等。
终端设备101、102可以是具有显示屏和处理器的各种电子设备,包括但不限于膝上型便携计算机和台式计算机等等。
服务器104可以是提供各种服务的服务器,例如对终端设备101、102上显示的集成开发环境类应用提供支持的服务器。服务器104可以对接收到的获取与项目名称匹配的项目的获取请求等数据进行分析等处理,并将处理结果(例如入口文件和业务文件)反馈给终端设备。
需要说明的是,本申请实施例所提供的用于集成开发环境的工作空间控制方法一般由终端设备101或者102执行,相应地,用于集成开发环境的工作空间控制装置一般设置于终端设备101或者102中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,其示出了根据本申请的用于集成开发环境的工作空间控制方法的一个实施例的流程200。所述的用于集成开发环境的工作空间控制方法,包括以下步骤:
步骤201,获取待加载的工作空间和待加载的至少一个项目的项目名称。
集成开发环境(IDE,Integrated Development Environment)是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。如微软的Visual Studio系列,Borland的C++Builder、Delphi系列等。
集成开发环境使用称之为“工作空间”的描述性文件来管理其中的项目,工作空间可以通过引用的方式加载多个项目。需要说明的是,根据操作***的不同,这个描述性定义不同。工作空间中以键值对的形式记载了其中引用的项目的项目名称、入口文件以及业务文件。可以通过修改工作空间的描述性文件上相关的键值对,来实现加载项目的目的。
在本实施例中,用于集成开发环境的工作空间控制方法运行于其上的电子设备(例如图1所示的终端设备)可以通过接收用户的指令信息来获取待加载的工作空间和待加载的至少一个项目的项目名称,或者通过预置的配置文件来获取待加载的工作空间和待加载的至少一个项目的项目名称。其中,工作空间既可以是新建的空的工作空间,也可以是已经存在的工作空间。
在本实施例的一些可选的实现方式中,上述电子设备可以通过如下方式获取待加载的工作空间:首先,检测用户创建工作空间的工作空间创建请求,例如,检测用户是否点击了集成开发环境中的新建工作空间按钮或者检测用户是否输入了集成开发环境中预设的用于触发新建工作空间操作的快捷键;然后,响应于检测到上述工作空间创建请求,创建工作空间;最后,获取所创建的工作空间作为待加载的工作空间。
在本实施例的一些可选的实现方式中,上述电子设备还可以通过如下方式获取待加载的工作空间:首先,检测用户对工作空间的工作空间选择操作,例如,检测用户打开工作空间时的工作空间选择操作;然后,响应于检测到上述工作空间选择操作,获取所述工作空间选择操作所针对的工作空间作为待加载的工作空间。
在本实施例的一些可选的实现方式中,上述电子设备可以通过如下方式获取待加载的至少一个项目的项目名称:首先,检测上述用户对预置的项目名称的项目名称选择操作,例如,可以提供选择界面,将所有可供选择的项目名称显示在上述界面,并接收用户的选择;而后,响应于检测到上述项目名称选择操作,获取上述项目名称选择操作所针对的至少一个项目名称作为待加载的至少一个项目的项目名称。
在本实施例的一些可选的实现方式中,上述电子设备可以通过如下方式获取待加载的工作空间:首先,获取配置文件,上述配置文件中记录了待创建工作空间的类型信息,例如ios***下面的工作空间类型是后缀名为“.xw”的文件;然后,按照上述类型信息创建工作空间;最后,获取所创建的工作空间作为待加载的工作空间。
在本实施例的一些可选的实现方式中,上述电子设备可以通过如下方式获取待加载的工作空间:首先,获取配置文件,上述配置文件中记录了待加载的工作空间的存储路径;然后,按照上述存储路径,获取待加载的工作空间。
在本实施例的一些可选的实现方式中,上述电子设备还可以通过如下方式获取待加载的至少一个项目的项目名称:获取上述配置文件中记录的至少一个项目名称作为待加载的至少一个项目的项目名称,其中,上述配置文件中记录了至少一个项目名称。
步骤202,对至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目。
在本实施例中,上述电子设备可以对至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目。这里,项目包括:项目名称、入口文件和业务文件,其中,入口文件为包含主函数的源代码文件(例如,包含main函数的.cpp文件),业务文件为不包含主函数的源代码文件(例如,不包含main函数的.cpp文件)或不能被直接执行的二进制文件(例如,不能被直接执行的.dll文件)。
在本实施例的一些可选的实现方式中,上述电子设备可以根据本地是否存在与该项目名称匹配的文件夹,获取与该项目名称匹配的项目的入口文件和业务文件。
在本实施例的一些可选的实现方式中,如果本地存在与该项目名称匹配的文件夹,则表明该项目为本地存在的项目或者该项目为已经从服务器下载到本地的项目,则获取与该项目名称匹配的文件夹中的入口文件和业务文件作为与该项目名称匹配的项目的入口文件和业务文件,其中,上述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件。
在本实施例的一些可选的实现方式中,如果本地不存在与该项目名称匹配的文件夹,则表明待加载的项目不是本地拥有的项目,需要首先向服务器发送获取与该项目名称匹配的项目的获取请求;然后,从上述服务器接收与该项目名称匹配的项目的入口文件和业务文件,接着,根据该项目的项目名称在本地建立与该项目名称匹配的文件夹,最后,将与该项目名称匹配的入口文件和业务文件存储到上述与该项目名称匹配的文件夹中,其中,上述业务文件为不能被直接执行的二进制文件。这里,为了保证代码内容不被泄露,从服务器接收的业务文件均为不能被执行的二进制文件,不能是源代码文件。
步骤203,在集成开发环境中加载上述工作空间。
在本实施例中,上述电子设备可以在获取了待加载的工作空间以及至少一个项目后,在集成开发环境中加载上述工作空间。作为示例,可以将上述工作空间的名字显示在集成开发环境中。
步骤204,对所获取的至少一个项目中的每个项目,在上述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件。
在本实施例中,上述电子设备可以在集成开发环境中加载完上述工作空间后,对所获取的至少一个项目中的每个项目,在上述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件。作为示例,可以将该项目的项目名称、入口文件文件名信息和业务文件文件名信息显示在集成开发环境中加载的工作空间中。
步骤205,检测用户对上述工作空间中加载的项目的项目选择操作,如果检测到,转到步骤206。
在本实施例中,上述电子设备可以检测用户对上述工作空间中加载的项目的项目选择操作,如果检测到,转到步骤206。作为示例,项目选择操作可以是用户对对上述工作空间中加载的项目的鼠标单击或者双击操作。
步骤206,响应于检测到项目选择操作,将项目选择操作所针对的项目作为上述工作空间的当前项目。
在本实施例中,上述电子设备可以响应于检测到项目选择操作,将项目选择操作所针对的项目作为上述工作空间的当前项目。由于集成开发环境中加载的工作空间中的项目可能多于一个,但同时只能编辑一个项目中的源代码文件,因此需要将用户选择的项目作为上述工作空间的当前项目。
本申请的上述实施例提供的方法,通过获取待加载的工作空间和待加载的至少一个项目,而后在集成开发环境中加载上述工作空间以及至少一个项目中每个项目的项目名称、入口文件和业务文件,最后响应于检测到用户对上述工作空间中加载的项目的项目选择操作,将上述项目选择操作所针对的项目作为上述工作空间的当前项目,提高了不同团队协作开发过程中的编码效率。
进一步参考图3,其示出了用于集成开发环境的工作空间控制方法的又一个实施例的流程300。该用于集成开发环境的工作空间控制方法的流程300,包括以下步骤:
步骤301,获取待加载的工作空间和待加载的至少一个项目的项目名称。
步骤302,对至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目。
步骤303,在集成开发环境中加载上述工作空间。
步骤304,对所获取的至少一个项目中的每个项目,在上述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件。
步骤305,检测用户对上述工作空间中加载的项目的项目选择操作,如果检测到,转到步骤206。
步骤306,响应于检测到项目选择操作,将项目选择操作所针对的项目作为上述工作空间的当前项目。
上述步骤301-步骤306分别与步骤201-步骤206基本相同,在此不再赘述。
步骤307,将上述工作空间中加载的除上述当前项目以外的其他项目中的业务文件的处理状态设置为不可处理状态。
在本实施例中,上述电子设备可以在确定了当前项目之后,将上述工作空间中加载的除上述当前项目以外的其他项目中的业务文件的处理状态设置为不可处理状态。这里,不可处理状态为:不可修改、不可保存以及不可编译。这样,上述工作空间中加载的除当前项目以外的其他项目中的业务文件都处于不可处理状态,实现了只有当前项目中的业务文件可以被修改、被保存或者被编译。
在本实施例的一些可选的实现方式中,上述电子设备可以根据所述当前项目的业务文件的文件类型,对该业务文件的处理状态进行设置。这里,文件类型包括源代码文件和二进制文件。
在本实施例的一些可选的实现方式中,如果上述当前项目的业务文件是源代码文件,上述电子设备可以将该业务文件的处理状态设置为可处理状态。这里,可处理状态包括以下至少一项:可修改、可保存、可编译。
在本实施例的一些可选的实现方式中,如果上述当前项目的业务文件是二进制文件,上述电子设备可以将该业务文件的处理状态设置为不可处理状态。
步骤308,检测用户对加载到上述工作空间中的项目的入口文件的入口文件选择操作。
在本实施例中,上述电子设备可以检测用户对加载到上述工作空间中的项目的入口文件的入口文件选择操作。例如,入口文件选择操作可以是用户对上述工作空间中加载的项目的入口文件的文件名的鼠标单击或者双击操作。
步骤309,响应于检测到入口文件选择操作,检测用户对上述工作空间的运行操作。
在本实施例中,上述电子设备可以在检测到入口文件选择操作后,检测用户对上述工作空间的运行操作。例如,上述运行操作可以是用户点击集成开发环境中预设的运行按钮,也可以是用户输入了集成开发环境中预设的可以触发运行操作的快捷键。
步骤310,响应于检测到上述运行操作,将上述入口文件选择操作所针对的入口文件所在的项目作为入口项目,编译上述工作空间中加载的项目中各个项目的入口文件和业务文件中的源代码文件,并运行编译后的上述工作空间。
在本实施例中,上述电子设备可以在检测到运行操作后,将上述入口文件选择操作所针对的入口文件所在的项目作为入口项目,编译上述工作空间中加载的项目中各个项目的入口文件和业务文件中的源代码文件,并运行编译后的上述工作空间。其中,入口项目用于指示上述工作空间运行时从入口项目的入口文件开始执行。这样,上述电子设备在集成开发环境中可以实现对本地拥有源代码的业务文件进行编辑、保存、编译以及运行,同时可以引用其他项目中没有源代码的且不能直接执行的二进制文件,最终实现多功能复杂客户端应用的不同团队的协作开发。
从图3中可以看出,与图2对应的实施例相比,本实施例中的用于集成开发环境的工作空间控制方法的流程300多出了将上述工作空间中加载的除上述当前项目以外的其他项目中的业务文件的处理状态设置为不可处理状态的步骤307、检测用户对加载到上述工作空间中的项目的入口文件的入口文件选择操作的步骤308、响应于检测到入口文件选择操作,检测用户对上述工作空间的运行操作的步骤309以及响应于检测到上述运行操作,将上述入口文件选择操作所针对的入口文件所在的项目作为入口项目,编译上述工作空间中加载的项目中各个项目的入口文件和业务文件中的源代码文件,并运行编译后的上述工作空间的步骤310。由此,本实施例描述的方案保证了在复杂客户端应用开发过程中既能实现不同产品线的业务需求又能实现不同团队的协作开发。
进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种用于集成开发环境的工作空间控制装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例所述的用于集成开发环境的工作空间控制装置400包括:第一获取单元401、第二获取单元402、第一加载单元403、第二加载单元404、第一检测单元405和当前项目确定单元406。其中,第一获取单元401,配置用于获取待加载的工作空间和待加载的至少一个项目的项目名称;第二获取单元402,配置用于对上述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,上述项目包括:项目名称、入口文件和业务文件,其中,上述入口文件为包含主函数的源代码文件,上述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件;第一加载单元403,配置用于在集成开发环境中加载上述工作空间;第二加载单元404,配置用于对所获取的至少一个项目中的每个项目,在上述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件;第一检测单元405,配置用于检测用户对上述工作空间中加载的项目的项目选择操作;当前项目确定单元406,配置用于响应于检测到上述项目选择操作,将上述项目选择操作所针对的项目作为上述工作空间的当前项目。
在本实施例中,用于集成开发环境的工作空间控制装置400的第一获取单元401、第二获取单元402、第一加载单元403、第二加载单元404、第一检测单元405和当前项目确定单元406的具体处理及其所带来的技术效果可分别参考图2对应实施例中步骤201、步骤202、步骤203、步骤204、步骤205以及步骤206的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,本实施例提供的用于集成开发环境的工作空间控制装置400还可以包括:处理状态设置单元407,配置用于将上述工作空间中加载的除上述当前项目以外的其他项目中的业务文件的处理状态设置为不可处理状态。处理状态设置单元407的具体处理及其所带来的技术效果可参考图3对应实施例中步骤307的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,本实施例提供的用于集成开发环境的工作空间控制装置400还可以包括:第二检测单元408,配置用于检测上述用户对加载到上述工作空间中的项目的入口文件的入口文件选择操作;第三检测单元409,配置用于响应于检测到上述入口文件选择操作,检测上述用户对上述工作空间的运行操作;编译及运行单元410,配置用于响应于检测到上述运行操作,将上述入口文件选择操作所针对的入口文件所在的项目作为入口项目,编译上述工作空间中加载的项目中各个项目的入口文件和业务文件中的源代码文件,并运行编译后的上述工作空间,其中,上述入口项目用于指示上述工作空间运行时从上述入口项目的入口文件开始执行。第二检测单元408、第三检测单元409以及编译及运行单元410的具体处理及其所带来的技术效果可分别参考图3对应实施例中步骤308、步骤309以及步骤310的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述处理状态设置单元407可以进一步配置用于:根据上述当前项目的业务文件的文件类型,对该业务文件的处理状态进行设置。处理状态设置单元407的具体处理及其所带来的技术效果可参考图3对应实施例中步骤307的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述处理状态设置单元407可以进一步配置用于:如果上述当前项目的业务文件是源代码文件,则将该业务文件的处理状态设置为可处理状态。处理状态设置单元407的具体处理及其所带来的技术效果可参考图3对应实施例中步骤307的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述处理状态设置单元407可以进一步配置用于:如果上述当前项目的业务文件是二进制文件,则将该业务文件的处理状态设置为不可处理状态。处理状态设置单元407的具体处理及其所带来的技术效果可参考图3对应实施例中步骤307的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述第二获取单元402可以进一步配置用于:对上述至少一个项目的项目名称中的每个项目名称,根据本地是否存在与该项目名称匹配的文件夹,获取与该项目名称匹配的项目的入口文件和业务文件。第二单元402的具体处理及其所带来的技术效果可参考图2对应实施例中步骤202的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述第二获取单元402可以进一步配置用于:如果本地存在与该项目名称匹配的文件夹,则获取上述与该项目名称匹配的文件夹中的入口文件和业务文件作为与该项目名称匹配的项目的入口文件和业务文件,其中,上述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件。第二单元402的具体处理及其所带来的技术效果可参考图2对应实施例中步骤202的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述第二获取单元402可以进一步配置用于:如果本地不存在与该项目名称匹配的文件夹,则向服务器发送获取与该项目名称匹配的项目的获取请求;从上述服务器接收与该项目名称匹配的项目的入口文件和业务文件,根据该项目的项目名称在本地建立与该项目名称匹配的文件夹,将上述与该项目名称匹配的入口文件和业务文件存储到上述与该项目名称匹配的文件夹中,其中,上述业务文件为不能被直接执行的二进制文件。第二单元402的具体处理及其所带来的技术效果可参考图2对应实施例中步骤202的相关说明,在此不再赘述。
下面参考图5,其示出了适于用来实现本申请实施例的终端设备的计算机***500的结构示意图。
如图5所示,计算机***500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有***500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本申请的方法中限定的上述功能。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括第一获取单元、第二获取单元、第一加载单元、第二加载单元、第一检测单元和当前项目确定单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取待加载的工作空间和待加载的至少一个项目的项目名称的单元”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:获取待加载的工作空间和待加载的至少一个项目的项目名称;对上述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,上述项目包括:项目名称、入口文件和业务文件,其中,上述入口文件为包含主函数的源代码文件,上述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件;在集成开发环境中加载上述工作空间;对所获取的至少一个项目中的每个项目,在上述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件;检测用户对上述工作空间中加载的项目的项目选择操作;响应于检测到上述项目选择操作,将上述项目选择操作所针对的项目作为上述工作空间的当前项目。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (18)

1.一种用于集成开发环境的工作空间控制方法,其特征在于,所述方法包括:
获取待加载的工作空间和待加载的至少一个项目的项目名称;
对所述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,所述项目包括:项目名称、入口文件和业务文件,其中,所述入口文件为包含主函数的源代码文件,所述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件;
在集成开发环境中加载所述工作空间;
对所获取的至少一个项目中的每个项目,在所述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件;
检测用户对所述工作空间中加载的项目的项目选择操作;
响应于检测到所述项目选择操作,将所述项目选择操作所针对的项目作为所述工作空间的当前项目。
2.根据权利要求1所述的方法,其特征在于,在所述将所述项目选择操作所针对的项目作为所述工作空间的当前项目之后,所述方法还包括:
将所述工作空间中加载的除所述当前项目以外的其他项目中的业务文件的处理状态设置为不可处理状态。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检测所述用户对加载到所述工作空间中的项目的入口文件的入口文件选择操作;
响应于检测到所述入口文件选择操作,检测所述用户对所述工作空间的运行操作;
响应于检测到所述运行操作,将所述入口文件选择操作所针对的入口文件所在的项目作为入口项目,编译所述工作空间中加载的项目中各个项目的入口文件和业务文件中的源代码文件,并运行编译后的工作空间,其中,所述入口项目用于指示所述工作空间运行时从所述入口项目的入口文件开始执行。
4.根据权利要求2所述的方法,其特征在于,所述将所述工作空间中加载的除所述当前项目以外的其他项目中的业务文件的处理状态设置为不可处理状态,包括:
根据所述当前项目的业务文件的文件类型,对该业务文件的处理状态进行设置。
5.根据权利要求4所述的方法,其特征在于,所述根据所述当前项目的业务文件的文件类型,对该业务文件的处理状态进行设置,包括:
如果所述当前项目的业务文件是源代码文件,则将该业务文件的处理状态设置为可处理状态。
6.根据权利要求4所述的方法,其特征在于,所述根据所述当前项目的业务文件的文件类型,对该业务文件的处理状态进行设置,包括:
如果所述当前项目的业务文件是二进制文件,则将该业务文件的处理状态设置为不可处理状态。
7.根据权利要求1所述的方法,其特征在于,所述对所述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,包括:
对所述至少一个项目的项目名称中的每个项目名称,根据本地是否存在与该项目名称匹配的文件夹,获取与该项目名称匹配的项目的入口文件和业务文件。
8.根据权利要求7所述的方法,其特征在于,所述根据本地是否存在与该项目名称匹配的文件夹,获取与该项目名称匹配的项目的入口文件和业务文件,包括:
如果本地存在与该项目名称匹配的文件夹,则获取所述与该项目名称匹配的文件夹中的入口文件和业务文件作为与该项目名称匹配的项目的入口文件和业务文件,其中,所述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件。
9.根据权利要求7所述的方法,其特征在于,所述根据本地是否存在与该项目名称匹配的文件夹,获取与该项目名称匹配的项目的入口文件和业务文件,包括:
如果本地不存在与该项目名称匹配的文件夹,则向服务器发送获取与该项目名称匹配的项目的获取请求;
从所述服务器接收与该项目名称匹配的项目的入口文件和业务文件,根据该项目的项目名称在本地建立与该项目名称匹配的文件夹,将所述与该项目名称匹配的入口文件和业务文件存储到所述与该项目名称匹配的文件夹中,其中,所述业务文件为不能被直接执行的二进制文件。
10.一种用于集成开发环境的工作空间控制装置,其特征在于,所述装置包括:
第一获取单元,配置用于获取待加载的工作空间和待加载的至少一个项目的项目名称;
第二获取单元,配置用于对所述至少一个项目的项目名称中的每个项目名称,获取与该项目名称匹配的项目,所述项目包括:项目名称、入口文件和业务文件,其中,所述入口文件为包含主函数的源代码文件,所述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件;
第一加载单元,配置用于在集成开发环境中加载所述工作空间;
第二加载单元,配置用于对所获取的至少一个项目中的每个项目,在所述工作空间中加载该项目的项目名称以及该项目的入口文件和业务文件;
第一检测单元,配置用于检测用户对所述工作空间中加载的项目的项目选择操作;
当前项目确定单元,配置用于响应于检测到所述项目选择操作,将所述项目选择操作所针对的项目作为所述工作空间的当前项目。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
处理状态设置单元,配置用于将所述工作空间中加载的除所述当前项目以外的其他项目中的业务文件的处理状态设置为不可处理状态。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第二检测单元,配置用于检测所述用户对加载到所述工作空间中的项目的入口文件的入口文件选择操作;
第三检测单元,配置用于响应于检测到所述入口文件选择操作,检测所述用户对所述工作空间的运行操作;
编译及运行单元,配置用于响应于检测到所述运行操作,将所述入口文件选择操作所针对的入口文件所在的项目作为入口项目,编译所述工作空间中加载的项目中各个项目的入口文件和业务文件中的源代码文件,并运行编译后的工作空间,其中,所述入口项目用于指示所述工作空间运行时从所述入口项目的入口文件开始执行。
13.根据权利要求11所述的装置,其特征在于,所述处理状态设置单元进一步配置用于:
根据所述当前项目的业务文件的文件类型,对该业务文件的处理状态进行设置。
14.根据权利要求13所述的装置,其特征在于,所述处理状态设置单元进一步配置用于:
如果所述当前项目的业务文件是源代码文件,则将该业务文件的处理状态设置为可处理状态。
15.根据权利要求13所述的装置,其特征在于,所述处理状态设置单元进一步配置用于:
如果所述当前项目的业务文件是二进制文件,则将该业务文件的处理状态设置为不可处理状态。
16.根据权利要求10所述的装置,其特征在于,所述第二获取单元进一步配置用于:
对所述至少一个项目的项目名称中的每个项目名称,根据本地是否存在与该项目名称匹配的文件夹,获取与该项目名称匹配的项目的入口文件和业务文件。
17.根据权利要求16所述的装置,其特征在于,所述第二获取单元进一步配置用于:
如果本地存在与该项目名称匹配的文件夹,则获取所述与该项目名称匹配的文件夹中的入口文件和业务文件作为与该项目名称匹配的项目的入口文件和业务文件,其中,所述业务文件为不包含主函数的源代码文件或不能被直接执行的二进制文件。
18.根据权利要求16所述的装置,其特征在于,所述第二获取单元进一步配置用于:
如果本地不存在与该项目名称匹配的文件夹,则向服务器发送获取与该项目名称匹配的项目的获取请求;
从所述服务器接收与该项目名称匹配的项目的入口文件和业务文件,根据该项目的项目名称在本地建立与该项目名称匹配的文件夹,将所述与该项目名称匹配的入口文件和业务文件存储到所述与该项目名称匹配的文件夹中,其中,所述业务文件为不能被直接执行的二进制文件。
CN201610500086.3A 2016-06-29 2016-06-29 用于集成开发环境的工作空间控制方法和装置 Active CN107544777B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610500086.3A CN107544777B (zh) 2016-06-29 2016-06-29 用于集成开发环境的工作空间控制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610500086.3A CN107544777B (zh) 2016-06-29 2016-06-29 用于集成开发环境的工作空间控制方法和装置

Publications (2)

Publication Number Publication Date
CN107544777A CN107544777A (zh) 2018-01-05
CN107544777B true CN107544777B (zh) 2020-12-25

Family

ID=60965606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610500086.3A Active CN107544777B (zh) 2016-06-29 2016-06-29 用于集成开发环境的工作空间控制方法和装置

Country Status (1)

Country Link
CN (1) CN107544777B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101122866A (zh) * 2007-09-12 2008-02-13 中兴通讯股份有限公司 集成开发环境中的程序代码编译方法
CN102368216A (zh) * 2011-10-20 2012-03-07 北京金和软件股份有限公司 一种基于项目自动构造的流程实现方法
CN103631636A (zh) * 2012-08-21 2014-03-12 国际商业机器公司 用于为商业服务器使能多个租用的方法及***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101122866A (zh) * 2007-09-12 2008-02-13 中兴通讯股份有限公司 集成开发环境中的程序代码编译方法
CN102368216A (zh) * 2011-10-20 2012-03-07 北京金和软件股份有限公司 一种基于项目自动构造的流程实现方法
CN103631636A (zh) * 2012-08-21 2014-03-12 国际商业机器公司 用于为商业服务器使能多个租用的方法及***

Also Published As

Publication number Publication date
CN107544777A (zh) 2018-01-05

Similar Documents

Publication Publication Date Title
US9495186B1 (en) Automatic discovery of a javascript API
US9021507B2 (en) Dynamic use of data across multiple programs
US9740593B2 (en) Comparative program execution through control of two or more debug sessions to automatically determine execution differences
US10084637B2 (en) Automatic task tracking
CN111767208B (zh) 一种自动测试方法及装置
CN111666217B (zh) 用于测试代码的方法和装置
CN111061489B (zh) 一种多平台编译检测方法、装置、设备及介质
US20140229924A1 (en) Automatic configuration of project system from project capabilities
CN111209001A (zh) 批量生成安卓各渠道apk的方法、***、设备和介质
CN107368407B (zh) 信息处理方法和装置
US11210110B2 (en) Application library analytics tool
US9135001B2 (en) Dynamically configuring an integrated development environment
CN112527312A (zh) 一种嵌入式***的测试方法和测试装置
CN107544777B (zh) 用于集成开发环境的工作空间控制方法和装置
CN116662193A (zh) 页面测试方法和装置
CN111190791A (zh) 应用异常上报方法、装置和电子设备
CN111831317B (zh) 服务间依赖关系的获取方法、装置、电子设备和存储介质
CN113407229B (zh) 用于生成离线脚本的方法及装置
CN111290870A (zh) 一种检测异常的方法和装置
CN111767486A (zh) 用于展示页面的方法、装置、电子设备和计算机可读介质
US20230214310A1 (en) Infrastructure to integrate an integrated development environment (ide) with game engines
CN113326188A (zh) 一种浏览器测试方法和装置
CN114942887A (zh) 一种程序安全测试方法、装置、设备和介质
CN113342633A (zh) 一种性能测试方法和装置
CN117435103A (zh) 应用程序的控制方法、装置、设备、存储介质及程序

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20191122

Address after: 201210 room j1328, floor 3, building 8, No. 55, Huiyuan Road, Jiading District, Shanghai

Applicant after: SHANGHAI YOUYANG NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 100085 Beijing, Haidian District, No. ten on the ground floor, No. 10 Baidu building, layer three

Applicant before: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20180105

Assignee: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd.

Assignor: SHANGHAI YOUYANG NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd.

Contract record no.: X2020990000202

Denomination of invention: Work space control method and device used for integrated development environment

License type: Exclusive License

Record date: 20200420

EE01 Entry into force of recordation of patent licensing contract
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 401120 b7-7-2, Yuxing Plaza, No.5, Huangyang Road, Yubei District, Chongqing

Patentee after: Chongqing duxiaoman Youyang Technology Co.,Ltd.

Address before: 201210 room j1328, 3 / F, building 8, 55 Huiyuan Road, Jiading District, Shanghai

Patentee before: SHANGHAI YOUYANG NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address