在异构UNIX系统间可靠的迁移Java应用 - 编程入门网
在异构UNIX系统间可靠的迁移Java应用时间:2011-04-16 IBM Shen Yu引言 使用 Java Native Interface (JNI) 编写 Java™ 应用程序可能充满挑战。C/C++ 代码比较复杂,并且维护其构建系统也是一项非常烦琐的任务。当基础平台的数量增加时, 如果不经过精心设计,整个构建系统可能会变得一团糟。有一种选择是,为每种平台构造一 种单独的构建系统,尽管从软件工程的角度来说,这样做不是很合适并且可能带来很大的麻 烦。 要确保能够移植到许多异类 UNIX® 平台,那么构建系统必须是可插入的。通过集成 Apache Ant、GNU Compiler Collection (GCC)、Make 和 Subversion,您可以创建一个功能 强大的构建系统。应该将构建系统组件化,这样一来,为新的组件添加或删除新的平台支持 就非常简单。它还应该使用各种技术以便自动地检测当前的平台,然后调用相应平台特定的 构建组件。本文介绍了如何构造这样的系统,您将学习到下面的内容: 集成 Ant、GCC、Make 和 Subversion 设计可插入的和可移植的构建系统及其源代码布局 在设计本地构建组件时,描述值得注意的 GCC 标志 自动检测当前构建环境,并设计任务依赖关系 集成 Ant、GCC、Make 和 Subversion 本文中的构建环境涉及到许多开放源代码工具(请参见参考资料部分以进行下载): Ant Java Development Kit (JDK) GCC Make Subversion 图 1 中显示了这个构建环境。Ant 主要负责: 检索代码到本地工作位置 调用 JDK 编译 Java 代码 调用 Make 构建本地代码 图 1. 构建环境 在异构UNIX系统间可靠的迁移Java应用(2)时间:2011-04-16 IBM Shen Yu获得源代码并控制构建版本 可以使用 Ant 和 Subversion 的组合来检索源代码,并同时控制构建版本。在开发周期 中,构建的工作将重复很多次。如果每次都需要手动地指定一个构建版本,那将是非常麻烦 的。清单 1 中的构建脚本用于提取 SVN 版本编号,并使用它作为构建编号。 清单 1. Ant 任务:管理构建版本
在执行这项任务的时候,会将 SVN 版本编号提取到 Ant 的 svn.revision 属性中。稍后 可以使用这个属性作为构建编号。这个任务只能够处理英文版本 SVN,因为 linecontains 筛选器仅检查该行内容中是否包含 Revision:。 另一项任务是从 SVN 存储库中检索源代码。下面的清单 2、3 和 4 显示了检索源代码的 任务。 清单 2. Ant 任务:检查该存储库是否已经签出
清单 3. Ant 任务:检索源代码
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |