[发明专利]二进制库有效
申请号: | 200880110702.8 | 申请日: | 2008-08-22 |
公开(公告)号: | CN101821711A | 公开(公告)日: | 2010-09-01 |
发明(设计)人: | C·坎贝尔 | 申请(专利权)人: | 埃森哲环球服务有限公司 |
主分类号: | G06F9/00 | 分类号: | G06F9/00 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 酆迅;李峥宇 |
地址: | 瑞士沙*** | 国省代码: | 瑞士;CH |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 二进制 | ||
相关申请交叉引用
本申请要求2007年8月23日提交的美国申请序列号11/844,143 的优先权,在此通过引用并入该申请的内容。
技术领域
本说明书涉及编程和编译软件项目。
背景技术
软件应用可以依赖于外部可执行代码以用于其正确的运行。例 如,某些应用使用动态链接库(DLL)来执行公共的功能。在对应用 进行编程期间,用户在应用的源代码中包括对外部资源的特定引用。 在对应用进行编译之后,应用在需要时使用这些引用来访问外部资 源。
发明内容
总体上,本文描述用于对软件项目进行编程和编译从而自动获取 软件项目的依赖性引用的方法和系统。
在第一总体方面中,描述了对计算机可执行代码进行编程和编译 的过程。该过程包括:在针对软件程序的计算机编程过程期间,接收 对具有供软件程序使用的已定义功能的软件模块的详细说明。所述软 件模块存储在具有软件模块的不同版本的中央存储库中。该过程还包 括编译软件程序。编译启动步骤,包括:过滤不满足所述详细说明的 软件模块版本。该步骤还包括:从未被滤除的版本中选择软件模块的 版本。该选择基于一个或多个预定规则。该过程还包括:返回软件模 块的选定版本,以用于与软件程序本地存储。
在第二总体方面中,描述了一种在编译过程期间返回共享工件 (artifact)以供软件程序使用的计算机实现的过程。该过程包括:接 收针对供软件程序使用的共享工件的请求。该请求包括部分地指定所 请求的共享工件的一个或多个参数。该过程还包括:访问中央存储库, 其存储可供使用的所请求共享工件的不同版本;以及选择共享工件的 版本。该选择包括:排除不满足由所述一个或多个参数提供的部分详 细说明的共享工件版本,以及基于一个或多个预定规则从未被排除的 共享工件版本中选择共享工件的版本。该过程还包括:输出共享工件 的选定版本,以用于与软件程序本地存储。
在此描述的系统和技术提供以下一个或多个优点。首先,该系统 和方法允许在编译期间向软件项目并入所引用资源的最近版本。第 二,可以使用掩码(mask)来确保与某些版本的兼容性,同时允许选 择其他修订的最近版本。第三,可以使用中央存储库来允许在多个软 件开发者之间方便地共享资源。第四,可以使用对标准开发环境的插 件来管理引用资源的动态取回(fetching)。
在附图和下文描述中记载了所描述特征的一个或多个实施方式 的细节。根据该描述和附图并且根据权利要求,其他特征和优点将是 易见的。
附图说明
图1是示出用于对计算机可执行代码进行编程和编译的示例系统 的框图。
图2是示出用于编译软件应用的示例过程的流程图。
图3A-图3C是示出用于请求软件模块的语法的示例的示意图。
图4是示出用来标识软件模块的示例索引的示意图。
图5是用于查询软件模块的本地和远程高速缓存的示例过程的流 程图。
图6是示出用于从本地存储位置请求软件模块的示例过程的流程 图。
图7是示出用于从存储库获取软件模块的示例过程的流程图。
图8是示出用于向存储库发布软件模块的示例过程的流程图。
图9是示出用于在存储库中存储软件模块的示例过程的流程图。
图10是示出具有不止一个存储库的示例系统的示意图。
各附图中的类似标号表示类似的元素。
具体实施方式
本文描述了用于使用中央存储库来编译软件应用的系统和技术。 在示例软件开发系统中,计算机系统可以使用诸如可执行代码(例如, 代码库)、图像和/或数据等各种软件模块来构建或测试软件项目。在 一个实现中,计算机系统可以从中央存储库获取软件模块。例如,响 应于查询,中央存储库可以返回所需的软件模块。在某些示例中,中 央存储库可以向计算机系统返回所请求软件模块的最近版本。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于埃森哲环球服务有限公司,未经埃森哲环球服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200880110702.8/2.html,转载请声明来源钻瓜专利网。