Tomcat教程

安装Tomcat

安装和运行Tomcat的方法有多种。最快的方法是下载并运行已编译过的二进制文件。 Tomcat是以Java编写的,这表示在能够构建(build)或测试它之前,必须安装最新的、完整的Java运行环境(JRE,Java runtime)。请务必参阅附录A以确定您已正确安装了Java。

开源项目的好处之一在于程序员发现错误时就立即修订,并改进软件。如果您不是程序员,那么重新编译源代码不会有什么好处,因为您不会对此感兴趣。当然,如果您不是富有经验的Tomcat开发者,那么您构建并便用自己的Tomcat 二进制包就会带来问题,因为悄悄地禁用一些重要特性会使编译Tomcat的过程较为简单。为能尽快开始,请下载适合系统使用的正式版二进制包。

Tomcat有两种打包方式:一种方式是Apache软件基金会发布发行版(releases)与抢先版(nightly  builds)的二进制包;另一种方式是其他组织将这些版本重新包装成Linux的RPM、BSD的安装包等。Tomcat的最佳安装方法则是依您使用的操作系统而定。

Tomcat 6需要在JRE1.5或更新版本(在Sun的销售组中称为“Java 5” )的环境下运行e 笔者建议您在Java 1.6或更髙版本下运行Tomcat 6,伹是,要根据Java 1.6 (或更髙版本)的JVM提供的附加特性、稳定性和改善性能而定。

在Linux上安装Tomcat

Linux的用户至少可以选择以下两种不同的二进制发行版格式。

多平台二进制发行版

无论是运行哪种Linux操作系统,您都可以从Apache Jakarta的网站下载、安装及运行任何Tomcat发行版的二进制文件,其表现形式为gzipped的归档文件(文件为tar.gz)和压缩归档文件。您可以将Tomcat安装在任何目录中,而且能以系统中任何用户身份进行安装。不过,由于这种安装过程没有管理工具可以追踪,且在系统的启动和关闭过程中还没有整合init脚本,因此日后的升级或卸载都会比较困难。

发行版本身的包(Distribution native package)

如果您用的是RedHat Linux或Fedora[或其他使用RedHat包管理(RedHat Package Manager, RPM)工具的Linux,如SUSE或Mandriva)操作系统,则您可以下载 Tomcat的二进制RPM包。通过RedHat包管理工具,您就可以轻易地卸载、升级 Tomcat了,而且还可以安装Tomcat的init脚本,以便在重新开机时或在命令行下启动、停止和重启Tomcat。此种安装方式的不足之处在于必须以root的身份登录方可安装Tomcat。如本书所述,至少有两种RPM包执行工具可供您选择,这两种方式具有不同的特性。

需要注意的是,尽管Linux就是操作系统内核,但完整的操作系统是“发行版 (distribution) ”的操作系统。目前存在多个Linux操作系统发行版,例如:Fedora、Red Hat、Ubuntu. Mandriva、Gentoo和Debian等Linux操作系统。尽管任意两类Linux 操作系统看起来都很相似,但也常存在许多差别,这使得开发者很难写出一种能同时成功运行于两类不同Linux操作系统上的脚本。也因为每类Linux起初可以使用不同的本地包管理器,因此,每类Linux的所有版本都可以修改操作系统的任何软件,包括Java 和Tomcat。对不同类的Linux而言,仅因为分类包分割方式存在细微差别而导致用 Java编写的被绑定软件无法工作,这是非常普遍的现象。与最新可用的稳定版本相比. 这些分类也使得早期版本的Tomcat不稳定,或者运行的网站效果不理想。出于这些原因,所以几乎总是需要您尽可能安装最近使用的、稳定的Tomcat版本。

因为有如此多类的Linux,且明显彼此不同,因此,本书不提供有关如何在不同类、不同版本的Linux上安装Tomcat的最佳详细指令,其内容超出了本书范围。幸运的是,采用更常见的Linux安装指令,以便从Apache二进制发行版上安装Tomcat,与在流行的Linux 上安装Tomcat的指令类似。

如果您用的是Fedora或者Red Hat Linux,则您可以选择多个Tomcat RPM包执行工具。

本书提供的Tomcat RPM包

这是一个完整的可重新部署的RPM包,您可以轻松地通过自定义的ant编译文件重新编译它。它不是编译Tomcat本身,而是绑定了Tomcat 6的正式多平台Apache发行类二进制文件供您选择.这个RPM包依赖于其他RPM包,因此您可以以单包的方式进行安装,但需要将环境配置为已安装Java运行时(JDK或JRE)的状态。请参阅附录E获悉这一RPM包脚本的完整源代码清单。

从JPacknge.org中获得的Tomcat RPM包

这是一个将Tomcat安装到/var目录下.不可重定向的RPM包。它根据源码重新编译Tomcat然后对最终的多平台类一进制文件〔resulting multiplatform class binary) 进行封装。该RPM包依赖于JPacknge.org网站上的许多其他RPM包(毎个包潜在地还需要更多的包),而且必须以RPM包图形化安装工具的方式进行安装。截至目前,Jpackage.org 网站上还没有Tomcat 6.0 RPM,只有Tome at 5.5 RPM.

每一个这样的RPM包都包含了安装、卸载和更新Tomcat的详细脚本,也包含了整合到操作系统上的运行时脚本。

如果您用的操作系统是Gentoo Linux,那么就可安装和使用ebuild的Tomcat 6.请通过William L. Thomson在网页http://www.gentoo.org/proj/en/java/tomcat6-guide.xml上写的内容査看具体指南。您也可以在网页http://gentoo-wiki.com/Tomcat_Gentoo+ebuild的Gentoo Wiki上查看奋看Tomcat Gentoo ebuild页。除了ebuild之外,本书编写的RPM包都是在Gentoo上安装并运行的,只要先安装rpm命令就可以了。

从Apache多平台二进制发行版上安装Tomcat

出于安全防护因素考虑,您应创建一个具有访问权限低的tomcat用户,井以该用户身份运行Tomcat。笔者建议将该用户的登陆shell设为/sbin/nologin,并锁定用户的密码,让他人无法测试到。将该tomcat用户的基本分组设置为nobody组或具有类似低权限的其他分也不失为一个好主意。您需要用root用户来完成这一操作:

# useradd -g 46 -s /sbin/nologin -d /opt/tomcat/temp tomcat

如果您不具备root访问权限,也可以用登录用户运行Tomcat,伹要清楚的是,Tomcat的任何安全隐患(极罕见)都将暴露给远程用户账户。

现在,请您从Apache二进制发行版文件网页http://tomcat.apache.org/download-60.cgi上下载一个发行版目标文件,您应下载的Tomcat主页http://tomcat.apache.org上列出的最新稳定版本。(警告:即使您只想安装所选版本的Tomcat的一小部分目标文件,也应该下载该版本的所有目标文件,以备后用。Apache软件基金会对Tomcat的版本进行归档,但您也该留有自己的备份,如果您是一位过分青睐于Tomcat的用户,那么您也可能要为自己的版本下载目标文件的源码,并存储备份,以备您巳选择的版本遇到潜在的缺陷(bug)时査找具体原因。)

解压主Tomcat二进制发行版目标文件。例如,如果您下载了apache-tomcat-6.0.14.tar.gz 目标文件,则将其解压到希望存放Tomcat文件的位置:

$ cd $H0ME
$ tar zxvf apache-tomcat-6.0.14.tar.gz

在执行下一步之前,您最好简要浏览新安装的Tomcat根目录下保存的RELEASE-NOTES 文本文件。它不仅包含了安装Tomcat所要了解的重要信息,而且提供了您所下载的版本的详细说明。有关在处理安装Tomcat分支之前所要进行的更重要的操作,请阅读在线Tomcat变化日志(changelog) 。例如,Tomcat 6.0的在线变化日志在网页http://tomcat. Apache.org/tomcat-6.0-doc/changelog.html上。无论您安装和使用哪一版本的Tomcat,都应在变化日志中査找所列出的bug,因为您的版本中存在的这些bug在新版Tomcat中都已得到修补,而且在新版日志变化文件中都将列出。

尽管Java 1.5.x的运行时能与Tomcat 6系统协同工作,但笔者还是建议您使用Java 1.6.x。如果您要以用户tomcat (或者非您当前登录的其他任何用户)运行Tomcat,那么就要安装这些文件,以备这一用户能读写那些文件。解包目标归档文件之后,必须在Tomcat 文件上设置file权限,从而该tomcat用户对其具有读/写杈限。如果要使一个不同的用户账户具有同样的权限,则需要再次以root用户(超级用户)登录。下面提供的语句是从shell下完成该任务的一种方法:

# chown -R tomcat apache-tomcat-6.0.14

尽管在重启机器之前它不会重新启动,但您心在应能运行Tomcat了。要想了解在服务器开机时如何自启Tomcat,请阅读本章结尾的"自动启动"一节的内容了。

从本书的Linux RPM包安装Tomcat

本书包含了一个用于Linux的Tomcat RPM包成熟样例(源码见附录E),它不仅充当了Linux上安装和运行Tomcat的一流方式,而且是解释如何编译自定义的Tomcat RPM包的样例。

开始安装之前,您必须安装Apache Ant 1.6.2 (http://ant,apache.org)或者更髙版本(但 不是1.6.4--改版本中断了),最好是1.7.x或更髙版本,而且必须在shell下可用,像下面这样:

#ant -version
Apache Ant version 1.7,0 compiled on December 13 2006

还必须让rpmbuild进制文件在shell下可用,在Fedora和Red Hat中,它是叫做rpm-build的RPM包的一部分。您必须使用4.2.1或者更高版本(包含在Red Hat 9中的4.2.0版有一个 bug, 阻止rpmbuild正常工作--现在已得到修补了!).确信您安装了该文件并能顺利地运行rpmbuild命令:

#rpmbuild --version
RPM version 4.3.2

从网页 http://catalog.oreilly.com/examples/9780596101060中下载本书样例目标文件.

以下列方式解包:

$ unzip tomcatbook-examples-2.0.zip

切换到tomcat-package目录:

$ cd tomeatbook-examples/tomcat-package

现在在网页http://tomcat.apache.org.download-60.cgi上的Apache二进制发行版处下载二进制发行版目标文件。您应下载网页http:/tomcat.apache.org中的Tomcat页面上列出的最新,最稳定的版本。请为您所选版本的Tomcat下载所有的tar.gz归档文件.

将所有的Tomcat二进制发行版归档文件移到tomcatbook_examples/tomcat-package/目录下,从而可以将它们包含在您要编译的RPM包集合中.

#cp apache-tomcat-6.014*.tar.gz tomcatbcok-examples/tomcat-package/

编辑conf/tomcat-env.sh文件,以便与您要展开Tomcat RPM包的机器设置相匹配.至少,对于Javal.5或1.6适应的虚拟机(JDK或FRE)而言,必须确保是系统文件 的绝对路径。

然后,调用ant以编译Tomcat 6 RPM包集合:

$ ant

该命令会编译Tomcat RPM包,一旦编译结束,您就可以在dist/目录下找到这些包了:

#is dist/
tomcat-6.0.14-0.noarch.rpm
tomcat-6.0.14-0-src.tar.gz
tomcat-6,0.14-0.src.rpm
tomcat-6.0,14-0.tar.gz

Tomcat RPM包编译器还编译了Tomcat源RPM包(注2),通常为了方便,在RPM包的后面加上了tar.gz文档属性。

将该RPM包复制到您要安装的机器上

在准备好要安装时,您可以执行两种选择;安装到默认的/opt/tomcat路径下。安装到您选择的路径下。

下列语句表示如何将其安装到默认路径下:

#rpm -ivh tomcat-6.0.14-0.noarch.rpm
Preparing...  ################################[100%]
1:tomcat      ################################[10Q%]

发现下列错误:

error: Failed dependencies:
            /bin/sh is needed by tomcat-6.0.14-0.noarch

如果最初没有使用RPM包管理器,且在RPM包管理器的数据库为空时,您正安装这一Tomcat包,那么通常会在操作系统中遇到类似的问题。例如,在安装rpm命令之后, 如果您正在Debian Linux操作系统上安装Tomcat RPM包,则这一问题也会发生。

用下列语句再试装一次:

#rpm -ivh --nodeps tomcat-6-0.14-0.noarch.rpm

如果得到了这样的用户和分组信息:

warning:user toticat does not exist - using root
warning: group nobody does not exist - using root

那么您需要使用adduser和addgroup,手工增加tomcat用户和nobody分组,确信tomcat用户的主分组为nobody,还要确保将用户tomcat的主目录设置为“/opt/tmncat/temp”,且将tomcat的登录shell设置为实际没有起作用的用户,如果有/sbin/nologin的话,则设置为/sbin/nologin:

#groupadd nobody
#useradd -s /sbin/nologin -d /opt/tomcat/temp -c 'Tomcat User' \
-g nobody tomcat

一旦完成了上面的操作,就可以安装Tomcat包了:

#rpm -e tomcat
#rpm -ivh --nodeps tomcat-6.0.14-0.noarch.rpm

一旦安装成功,只要验证/opt/tomcat/tomcat-env.sh中设置的JAVA_HOME路径指向了您想要的1.5或1.6的JVM就可以了。此时您可以运行Tomcat了。

使用这些相同的RPM包,您就可以安装Tomcat并将其重定向到另一个系统文件路径(与前面的路径不同)了,如下所示:

#rpm -ivh —prefix /usr/local tomcat-6.0.14-0.noarch.rpm

该命令将会安装Tomeat,并将其重定向,从而使CATALINA_HOME变成了/usr/local/tomcat,您也可以用这种方式安装admin和compat包。

从JPackage.org Linux RPM包安装Tomcat

要下载并安装JPackage.org Tomcat RPM包,请访问http://JPackage.org/repos.php。该网页讨论了如何配置元数据包管理器的内容.如yum、apt-rpm、urpmi和up2date。由于其安装过程存在大量依赖关系,因此这是安装JPackage.org Tomcat RPM包集合的唯一合理途径。同时,也因为有关设置元数据包管理器的知识库配置细节会随时发生变化,所以无法在本书中举例进行说明。详细信息请访问JPackage.org网站。(警告:该JPackage,org Tomcat 5.5 RPM包创建了一个叫做tomcat5的用户和组,并用该用户和组运Tomcat。 Tomcat5用户默认的shell是/bin/sh,不要尝试改变这shell,否则Tomcat就会停止运行。)

在Solaris 安装Tomcat

在Solaris上安装新的Tomcat包之前,您应检查系统中是否已经存在以前的Tomcat,并决定是否该刪除它。至少在Sun的Solaris 10中,默认情况是没有安装Tomcat包的。

注意:Solaris 9含有旧版的Tomcat。可以用以下命令来检查是否已安装了Tomcat:

jasonb$ pkginfo | grep -i tomcat

如果这条命令输出一个或多个包,则表示已安装了Tomcat。如想得到更多关干包的信息,请使用pkginfo-1命令。例如,如果预先装好的Tomcat包叫做SUNWtomcat:

jasonb$ pkginfo -1 SUNWtomcat

甚至在安装Tomcat时,也不应该会造成问题。不过,为了安全起见,笔者建议只有在准备应付任何因卸载造成的破坏时,才卸载现成的Tomcat包。如果您确定是包造成的问题,则可以用root用户的身份来移除:

#pkgrm SUNWtomcat

要安装Tomcat Solaris包,您需要将用户身份切换至root用户上,否则不具备写文件的充足权限。通常,这需要通过sudo或su命令予以完成。例如:

# su -
Password:
Sun Microsystems Inc. SunOS 5.10 Generic January 2005
#id
uid=0(root)  gid=o(root)

然后,就可以进行安装了。

虽然Solaris中包含了Java 1.5.0的标准,但您应确定将其升级到了新的、更具活力的版本上。要了解获得什么信息及从哪里获得详细信息,请参见附录A。 截止本书发稿,笔者能找到的Tomcat的唯一Solaris包是Blastwave Solaris Community Software (CSW)包集合中包含的Tomcat 5.5包。CSW包集合是一组团体支持的开源包, 类似于一个Linux分发的包集合。请查看http://wwwblastwave.org的Blastwave CSW网页了解具体内容。最好通过调用pkg-get命令来安装CSW包,虽然该命令不是Solaris自带的,但安装方法很简单。

从URL为http://www.blastwave.org/pkg-get.php的网页上安装pkg-get。笔者能像下面这样使用wget下载它:

# PATH=/opt/csw/bin:/usr/sfw/bin:/usr/sfw/sbin:$PATH
# export PATH
# wget http://www.blastwave.org/pkg_get.pkg

如果以上命令不能生效(例如,您使用上面的命令却没能安装wget),那就使用Web浏览器,下载pkg_get.pkg文件到您的Solaris机器上。

用下面的办法安装pkg_get包:

# pkgadd -d pkg_get.pkg

按“Enter”键,然后在命令提示符下输入y。

下面在系统的/etc/default/login文件中增加路径设置。

首先,要让该文件可用root写:

# chmod u+w /etc/default/login

然后编辑/etc/default/login并增加下列文本:

PATH=/opt/csw/bin:/usr/sfw/bin:/usr/sfw/sbin: $PATH export PATH

然后,保存该文件并释放权限:

# chmod u-w /etc/default/login

除了不必修改/etc/profile文件的许可权限外,对其同样进行上面操作步骤的处理。编辑 /etc/profile,且在该文件结尾插入上面相同的行,并保存。 使用pkg-get之前,用下列命令更新pkg-get的目录:

#pkg-gct -U

一且成功,就可以使用pkg-get对包进行安装丁。

一旦安装了pkg-get命令并能正常执行.就可以安装Tomcat 5.5了。确信您已切换到了 root用户下,就可以由此对包进行安装了。请采用类似于下面这样的命令安装Tomcat包:

# pkg-get install tomcats

Tomcat 5.0没有CSW包.因此Tomcat 5.5包被称为CSWtomcat5。

如果在安装过程中系统提示您有些脚本必须用superuser运行并询问您确信想安装这些包 时,录人y并按“Enter”键。

注意:安装CSW同时会启动Tomcat。安装结束后,您就可以运行Tomcat了!在URL为 http ;//localhost:8Q80上测试一下。

一旦安装成功,则基本安装目录为/opt/csw/share/tomcat5,且init脚本被安装为/etc/init.d/cswtomcat5。当您第一次安装该Tomcat包时,您应阅读init脚本的顶部注释,以掌握 Solaris Tomcat包的详细信息,它会随包的修订而改变。

在Windows上安装Tomcat

第一步,您可以直接从Apache软件基金会的Tomcat网页上直接下载Windows系统的Tomcat,它是一个Windows风格的图形化安装工具。尽管您也可以用压缩的二进制发行版文件安装Tomcat,但是Windows图形化安装工具也为您完成了设置和操作系统集成方面的许多事情,笔者推荐您使用图形化安装工具。从http://tomcat.apache.org/download-60.cgi的版本网页上下载发行的安装工具,如下载apache-tomcat-6.0.14.exe (或者更新的版本;除非您有理由不用最新可用的稳定版本),开始第一步。

第二歩.当您下载完毕并运行该安装工具程序时,系统首先要验证是否可以找到JDK 和JRE,然后提示您提供授权许可。该授权许可是Apache的软件授权许可(Apache Software License),只要您提供它所要的荣誉,就可以随心所欲地使用该软件了。如图 1-1所示接受该授权许可。


第三步,该安装工具会允许您选择需要安装的Tomcat组件。在该安装工具窗口的顶端, 有一个手动下拉列表框,您可在此处选择组件的不同类型包集合(如图1-2所示)。手动选择要安装的组件,在下拉列表框中选择Custom,然后选择或不选择任何组件及子组件。


如果您想让Tomcat能自动启动,并从控制面板的“服务”中控制它,则请选中Service 软件复选框。

Tomcat Source Code是可选的;如果您要开发Java应用程序或只是好奇,请选择它。 然后,指定安装Tomcat的位置,默认的位置是C:\Program Files\Apache Software Foundation\Tomcat6.0,您也可以根据需要予以更改,如图1-3所示:


第四步,安装工具会提示您HTTP/1.1连接端口--这是Tomcat的Web服务器端口。默认端口被设置为8080,但如果您想在Windows上让Tomcat成为您的第一个交互的Web服务器(Tomcat扮演这种角色会完成出色的工作),您也可以将该端口自由地变换为80端口。该安装过程还会向您询问访问Tomcat的管理员登录用户名和口令,将口令进行设置,这将是您登录Tomcat的webapp管理器的用户名和口令。

此时,安装工具还会允许您从已安装的运行过程中为Tomcat选择Java运行时。笔者建议您为此选择安装Java1.6.x或更高版本。一且配置了Java运行时,那么Install按钮将变成可单击的状态,单击该按钮就开始安装Tomcat了。

在正常安装结束后,您应看到“Completing the Apache Tomcat Setup Wizard” (完成 Apache Tomcat安装)的消息,如图1-4所示。



恭喜您!您已安装了新的Tomcat,并可运行它了!如本章稍后描述的“启动、停止和重启Tomcat”—样,您现在需要启动服务器进行初始化测试了!

在Mac OS X上安装Tomcat

感谢Mac OS X支持精彩的BSD,在Mac OS X上安装Tomcat的过程与您前面所看到的 non-RPM Linux安装过程相似。在Mac OS X上安装Tomcat时,您应从Tomcat站点上下载.tar.gz文件而不是.zip,因为Unix文件许可并不刚好就是以zip文件保存的。特别要注意的是,这些脚本上已失去了包括Tomcat在内的执行许可权,只有恢复了许可权,才有可能启动或停止Tomcat。但在安装之前,必须按如下所示检查Java的版本:

$ java -version
java version “1.5.0_07”
Java(TM) 2 Runtime Environment,Standard Edition (build 1.5.0_07-164)
Java HotSpot(TH) Client VH (build 1.5.0_07-87,mixed mode, sharing)

如果您的Java版本至少是1.5.0版,那么您可以安装Tomcat 5.5或Tomcat6.0。如果您不具备至少是1.5.0版本的Java运行时,那么在不先更新Java的情况下,您是无法安装Tomcat 6.0甚至更高版本的。如果您正在运行OS X 10.4 (Tiger)的完全更新版本,那么您至少具有Java 1.5.0。您可以从Apple Developer Connection的http://connect.apple.com上下载它。 如果您还没有注册,请进行注册(免费的!),然后导航到Java下载部分。这一工作也可以通过Apple的软件更新(Apple’ s Software Update)来完成。请确保您正在安装 Apple的最新版JDK。当您看到本书时,Apple的1.6 JDK可能也可以用了,笔者鼓励您安装并使用这一版本。

这些指令依赖于sudo命令的使用。在OS X上,您必须以管理员权限登录并使用该命令。Sudo以不同用户的身份执行单条语句。这些指令以root用户和nobody分组的身份使用sudo执行命令。在sudo询问口令时,您得注意应录入登录口令,而不是用户执行如su命令这样的命令口令。

这些指令将把Tomcat安装到/user/local下。在OS X上安装Linux或BSD风格的程序时,有 人宁愿将其安装到/Library/下以作为Tomcat的合适路径,而不是安装到/user/local下,这 是有争议的。

在Linux上,将Tomcat安装成未授权用户可运行的方式是可取的。有些人喜欢专门为 Tomcat创建一个专门的用户,但这没有必要。使用内嵌的nobody用户予以替代是非常简单的处理方法。这些指令会使用预先存在的用户,而不是新创建一个用户:

$ tar -xzf apache-tomcat-6.0.14.tar.gz

一旦您从Tomcat网站上为您选择的Tomcat版本下载了.tar.gz文件,那么您需要对其解压。可以按以下方式,从终端(Terminal)或探测器(Finder)上完成这一任务:

$ tar -xif apache-tomcat-6.0.14.tar.gz

一旦下载并解压了Tomcat,则您需要将解压后的文件移到要安装的文件夹下,您仍然可以从Finder下完成这一工怍,d但由于笔者需要在Terminal上使用这些指令的剩余部分,所以您在此也得根据这一步使用Terminal。 —旦把从.tar.gz文件解压后所包含的文件移到了对应的文件夹中,则需要运行下列指令(根据需要修改对应的文件名):

$ sudo mv apache-tomcat-6.0.14/usr/local/

录入您的登录口令,则该目录会被重定向为/usr/local/

为了简化将来的升级操作,需要创建一个象征性链接,将/user/local/tomcat链接到您刚移到的/user/local/文件夹上,如下所示(再根据实际情况使用合适的文件名予以替代):

% sudo In -s /usr/local/apache-tomcat-6.0.14/ /usr/local/tomcat

Tomcat需要JAVA_HOME和CATALINA_HOME两种环境变量方可运行。JAVA_HOME指 Tomcat使用的Java虚拟机(JVM, Java Virtual Machine).而CATALINA_HOME指解包的Tomcat二进制(运行时)文件分布的根目录。需要使用合适的文本编辑器(如sudo vi /etc/profile)将下列行增加到/etc/profile的尾部,实现对其进行设置:

export JAVA_H0ME=/Library/Java/Home
export CATALlNA_HOHE=/usr/local/tomcat

以上操作假定您使用所用OS X版本的默汄JVM。如果您希望使用一个与此不同的 JVM,那么就不得不改变JAVA_H0ME的值a 因为在终端(Terminal)处于开放状态时,/etc/profile是只读的,因此此时必须关闭 Terminal并打开一个新的。可按如下所示选择已设置好的变量:

$ echo $JAVA_H0HE
/Library/Java/Home
$ echo $CATALINA_HOME
/usr/local/tomcat

(注意:随后,如果决定使用launchd来启动和停止Tomcat,如下所述,那么就不必使用/etc/profile中定义的环境变量) 只要将Tomcat安装的所有权交给用户nobody,就完成了所有操作:

$ sudo chown -R nobody:nobody /usr/local/tomcat
$ cd /usr/local
$ ls -1
total 0
drwxr-x--- 13 nobody nobody 442 Sep 27 15:36 apache-tomcat-6.0.14

(注意:现在Tomcat被nobody所拥有,而且具有非常严格的执行权限.)

尽管在开机之前Tomcat不会重新启动,但现在您应能运行它了。要想了解在服务器开机时如何自动运行Tomcat,请阅读本章结尾“自动启动” 一节的内容。

在 FreeBSD 上安装 Tomcat

FreeBSD端口系统包括Tomcat 6的一个端口。要了解更多的及时详细信息,请访问http://www.freshports.org/ww w/tomcat6/。 首先,要确保对Tomcat6端口树进行更新,如下所示:

#cd /root
#cp /usr/share/examples/cvsup/ports-supfile tc6-supfile

编辑tc6-supfile文件。

change the lines that say:	                 To say:
+default host=CHANGE_THIS .FreeBSD.org	* default host=cvsup .FreeBSD .org
ports-all	                                #ports-all
#ports-www	                            ports-www

访问http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html网页的结尾,査找用于物理位置的最佳默认主机名。

现在,使用修改过的supfile更新该端口树:

#pkg_add -r cvsup
# cvsup -g -L 2 tc6-supfile

一旦更新了该树,则采取如下步骤进行安装:

#cd /usr/ports/www/tomcat-6
#make install

该命令并没有从源码上编译Tomcat相反,它通过解包正式的Apache二进制版本归档文件,“编译” 了FreeBSD端口包文件,井增加了FreeBSD特殊的封装文件,然后将这些文件全部安装到FreeBSD应安装到的位置。该项工作完成以后,编辑/etc/rc.conf文件并增加下列行:

tomcat60_enable=“YES”
tomcat 60_java_opts=“-Djava.net.preferIPv4Stack=true”

第一行使能了RCng init脚本——除非以这种方式启用tomcat60_enable变量,否则该初始化脚本存在设法不启动Tomcat的代码,以阻止Tomcat在开机时意外启动,增加第二行代码将避免因Tomcat打开TCP服务器端口而带来的问题。

关注微信获取最新动态