| 许多新老开发人员正在投身于不断增长的 Apache Geronimo 
              热潮。因此,对于希望集成修改或定制模块的开发人员,构建 Geronimo 的能力越来越重要了。不幸的是,构建 Geronimo 
              并不容易。它要求学习新的构建脚本以及构建应用程序。幸运的是,通过这个详细的分步指南,您就可以理解如何从头构建 Apache Geronimo 
              源代码。 Apache Geronimo 作为一个开放源码解决方案正在迅速发展,新的 1.0 版本已经完成了,Geronimo 
              已经度过了原始时期。像 Geronimo 这样的大型开放源码解决方案总是受到大量开发人员的关注。开发人员无论是进行提交,还是为了内部使用或业务使用而进行开发,他们都需要更多地了解 
              Geronimo 的结构,从而掌握构建过程。 本文讨论以下的 Geronimo 构建主题: 
              如何下载和安装在构建过程中需要使用的构建应用程序,即 Apache Maven 和 Subversion(SVN)。 
              了解源代码和二进制标准发行版中的相关 Geronimo 目录,以及它们与 Geronimo 
                整体的关系。 从头构建 Geronimo 并登录 Geronimo Console。 使用 SVN 从 svn.apache.org 签出 Geronimo 的最新版本,然后登录 
                Geronimo Console 来测试和运行它。  本文使用 Geronimo 1.0 版,并假设您不了解 Geronimo 或 Geronimo 
              构建过程。要构建 Geronimo,需要 Java™ 1.4.2_08(或更高版本,但是要低于 1.5)。从 Sun 
              Microsystems 公司下载  
              Java 代码。 在下载 Java 之后,下载  
              Geronimo 1.0 版。在 Binaries 和 Source Code 部分中,选择 .zip(Microsoft® 
              Windows® 或 Linux®)或 .tar.gz(Linux)文件。 当下载完成之后,将 .zip 或 .tar.gz 文件解压在同一目录中,这样 Geronimo 
              安装就准备好了。 因为 Geronimo 使用 Apache Maven 作为构建工具,所以还需要从 apache.org 
              下载  
              Maven 1.1 Beta 2。按照简单的  
              安装说明 进行操作即可! 需要下载的最后一个应用程序是  
              Subversion,将使用它从 Apache Geronimo Subversion 存储库签出最新的源代码树(HEAD)。 另外,确保添加以下环境变量: 
              MAVEN_HOME 应该是 Apache Maven 安装的根目录。 JAVA_HOME 应该是 Java 安装的根目录。  最后,确保以下目录在 PATH 变量中: 
              <maven-install-dir>/bin <geronimo-install-dir>/bin <java-install-dir>/bin <subversion-install-dir>/bin  关于在 Windows 和 Linux 系统上在 PATH 中添加目录或创建新环境变量的信息,请参见 
               参考资料 
              中的链接。 在下载的二进制和源代码安装中有几个目录。二进制下载包含 Geronimo 的核心,这是运行和使用 
              Geronimo 所必需的。源代码下载包含所有 Geronimo 源代码,包括用于构建整个树的 Maven 构建脚本。首先,我们来看看二进制发行版,然后是源代码发行版。 二进制发行版 二进制发行版的文件/目录比较少,但是比较大,因为它们是二进制形式的。下面列出相关目录: 
              bin —— 大多数开发人员应该熟悉这个目录。其中包含可执行文件。 config-store —— 想知道 Geronimo 的部署者将应用程序的 .war 
                和其他文件放在哪里吗?就在这儿。 doc —— GBeans 的一些计划或配置放在这里。 repository —— 这里包含构建和运行 Geronimo 所需的依赖项。 var —— 这里存储配置和属性文件,以及内置的 Derby 数据库系统。  对二进制发行版就介绍这么多。更多信息请参见 参考资料 
              中的链接。下面介绍源代码发行版。 源代码发行版 在这个发行版中有几个文件/树,这是源代码树的常见情况 —— 有许多有意思的代码!下面列出顶级目录: 
              applications —— 容纳 Geronimo 附带的各种标准应用程序。关于每个应用程序的情况,请参见 
                参考资料 
                中的链接。 modules —— 包含几个目录,其中包含所有 Geronimo 源代码。Assembly 
                是主构建目录;但是,也可以单独构建每个目录。  作为开发人员,您应该非常熟悉 modules 目录中打算修改的子目录。接下来,对 Geronimo 
              进行初始构建。 执行 Geronimo 的初始构建是很容易的。只需打开控制台,进入 <geronimo-install-dir>,输入 
              maven new。但是,如果修改了代码,就应该重新构建树。这通过输入 maven m:clean 
              m:clean-repo new 来完成。 可以在以上命令中添加 "-Dmaven.test.skip=true -Dmaven.itest.skip=true",从而跳过测试。我不建议在对树进行修改之后跳过测试,但是在某些情况下这可以节省时间。记住,跳过内置的测试可能会影响系统的安全性和功能性。在输入以上命令之后,构建就开始了,如 
              图 1 所示。 图 1. 构建 Geronimo 
   在构建过程中,您会注意到 Maven 正在下载各种 .jar 文件和其他依赖文件。我提到这一点是因为在我第一次构建 
              Geronimo 时从 Maven 收到了一个错误,它指出无法获得某些依赖文件。这大大妨碍了我使用 Geronimo 核心来调试我的代码。在这一次使用 
              Maven 构建 Geronimo 时,我没有收到这种错误。但是,为了以防万一,如果遇到 Maven 无法获得某些依赖项的问题,请采取以下步骤: 
              进入 <geronimo-install-dir>。 将 repository 目录中列出的所有目录复制到您的 HOME 目录中的 .maven/repository 
                目录。 再次构建 Geronimo。  现在,Maven 的运行应该没有问题了,因为它从 Geronimo 安装获得了所有必要的依赖文件。如果 
              Maven 需要什么文件,就能够找到它们。 成功的构建如 图 2 
              所示。图 2. 成功的构建 
   当构建过程完成时,新的构建没有保存在 ./bin 目录中,因为 ./bin 目录不是源代码发行版的一部分。因此,构建 
              Geronimo 并不会以任何方式影响系统上现有的 Geronimo 构建,无论是开箱即用的 Geronimo 构建,还是已经替代了开箱即用构建的任何构建。 下面来测试这个构建。  要运行这个新构建的服务器,应该进入这个目录:<geronimo-install-dir>\assemblies\j2ee-tomcat-server\target\geronimo-1.0。 打开控制台并输入 java -jar bin/server.jar。 服务器现在应该启动了,如 图 
              3 所示。图 3. 启动 Apache Geronimo 
   既然 Geronimo 启动了,现在打开一个浏览器并指向  http://localhost:8080/console。 现在,应该会看到 Geronimo Console,如 图 
              4 所示。图 4. Geronimo Console 
   到处随便浏览一下。注意,默认的用户名是 system,密码是 
              manager。 现在,作为开发人员或调试人员,您可能希望获得最新最好的代码,因此需要使用 SVN 签出整个树。 对于正在开发先进技术的开发人员,掌握最新的代码是很重要的。对于 Geronimo 这样的项目,每次发布都有很重要的更新。每天或每周都可能出现新的 
              bug 补丁或新特性。使用 SVN 签出并构建整个源代码树,就可以掌握最新的代码,可以利用 Geronimo 开发人员已经开发的所有新特性。 用 SVN 签出最新的 Geronimo 源代码是很容易的。前面已经安装了 SVN。为了签出最新最好的代码,进入要放置签出的 
              Geronimo 源代码树的目录,并输入 svn checkout http://svn.apache.org/repos/asf/geronimo/trunk 
              geronimo。 Geronimo 树被下载(签出)到您的计算机上,如 图 
              5 所示。图 5. 签出最新的 Geronimo 源代码树 
   要获得进一步的更新,可以在 ./geronimo 目录(也就是将 Geronimo 
              从 svn.apache.org 签出到的目录)中输入命令 svn update。 接下来,清理并构建发行版。进入刚从 svn.apache.org 签出的新的 Geronimo 
              目录,输入  maven m:clean m:clean-repo new -Dmaven.test.skip=true 
              -Dmaven.itest.skip=true。 注意,这一次 Maven 会下载新的依赖文件,所以可以得到最新的开发成果!像以前一样构建源代码,这样就得到了 
              Geronimo 的最新版本。 接下来,测试新的构建。 测试这个构建与测试从 Apache Geronimo 下载的源代码的初始构建相似,只是这一次是测试通过 
              SVN 接收到的最新源代码。在控制台中输入以下命令来启动 Geronimo:java -jar <svncheckout-geronimo-dir>/assemblies /j2ee-installer/target/geronimo-1.0-SNAPSHOT/bin/server.jar
 好了!服务器启动了。现在进入 Geronimo Console。像以前一样,打开浏览器并指向(http://localhost:8080/console)。见 
              图 6。图 6. 在 Geronimo 的最新版本中查看 Geronimo 
            Console 
   默认的用户名和密码仍然是 system 和 manager。 现在,您的计算机上已经安装了 Geronimo 应用服务器的最新版本,并正在运行。 您现在已经掌握了 Geronimo 源代码树的构建,可以顺利地构建 Geronimo 了。还使用 
              SVN 从 svn.apache.org 签出了 Geronimo 源代码树的最新版本,并成功地构建和在服务器上运行。如果您打算开发 
              Geronimo 代码或者在 Geronimo 源代码树中进行修改或添加,那么通过 Geronimo 开发人员邮件列表聚集在一起的社区会欣赏您的努力。参见 
              参考资料 
              中 Geronimo 邮件列表的链接。学习  
            获得产品和技术  
            讨论 |