当前位置: 代码迷 >> Solaris >> 在solaris10下安装jdk+tomcat
  详细解决方案

在solaris10下安装jdk+tomcat

热度:5391   发布时间:2013-02-26 00:00:00.0
在solaris10上安装jdk+tomcat

这个比较简单,从sun的JDK下载页面取得solaris的JDK,

从这里开始,http://java.sun.com/javase/downloads/index.jsp

选择solaris SPARC平台,下载jdk-*-sparc.sh。

在服务器上运行这个sh,首先出现用户协议,选择yes,则自动完成JDK的安装。

然后,删掉原来的java 的link,建立一个到新安装的JDK的link。

rm /usr/java

ln -s /usr/java /yourjdkpath

然后,修改/etc/profile 的内容,加入JAVA_HOME 和 JRE_HOME ,以及

CLASSPATH的设定,例如

JAVA_HOME=/usr/java

export JAVA_HOME

JRE_HOME=/usr/java/jre

export JRE_HOME

CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib

export CLASSPATH

PATH=.:$JAVA_HOME/bin:$JRE_HOME/bin

export PATH

然后,退出当前用户,重新登录,使用

java -version

查看是否安装正确。

Tomcat的安装
一、Tomcat的安装

1. 下载Tomcat
Tomcat站点:http://tomcat.apache.org/
下载页面:http://archive.apache.org/dist/jakarta/tomcat-5/v5.0.28/bin/
文件地址:http://archive.apache.org/dist/jakarta/tomcat-5/v5.0.28/bin/jakarta-tomcat-5.0.28.tar.gz
(推荐使用jakarta-tomcat-5.0.28)
2. 解包Tomcat
# gunzip jakarta-tomcat-5.0.28.tar.gz
# tar -xvf jakarta-tomcat-5.0.28.tar

3. 更改Tomcat目录名,方便以后操作
# mv apache-tomcat-5.5.20 tomcat

4. 移动Tomcat到/usr/local下
# mv tomcat /usr/local/

5. 配置环境变量
编辑/etc/profile,在最后加入:
程序代码
JAVA_HOME=/usr/jdk/j2sdk1.4.2_11
export JAVA_HOME
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export CLASSPATH
CATALINA_BASE=/usr/local/tomcat
CATALINA_HOME=/usr/local/tomcat
export CATALINA_BASE CATALINA_HOME
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$CATALINA_HOME/bin:/usr/sfw/bin:/usr/ccs
/bin
export PATH

6. 启动Tomcat
转到Tomcat的bin目录下:
# cd /usr/local/tomcat/bin
执行startup.sh脚本启动Tomcat:
# ./startup.sh

7. 测试
打开浏览器,访问:http://localhost:8080,出现Congratulations表示成功
二、在Tomcat的server.xml配置文件中部署

1、在Tomcat下,找到conf文件下的server.xml,打开。

2、在<Host>和</host>之间加上如下代码:
1
2 <Context path="/虚拟目录名" docBase="目标目录位置" debug="0" reloadable="true" >
3 </Context>

(严格区分大小写,当path=""时,此时的虚拟目录直接为root--->http://localhost:8080/)
?????? 参数:

???????? path:表示在浏览器中输入http://localhost:8080/虚拟目录名

???????? docBase:表示你的程序包的物理绝对路径,默认的绝对路径是???? %tomcat_home%/webapps

???????? reloadable :为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重起tomcat的情况下改变应用程序;为false则不自动加载。
三、用Solaris 10的SMF配置Tomcat为自动启动

Solaris10中的SMF简介

??? SMF是Service Management Facility 的缩写,是Sun公司在其Solaris产品中提供的一种管理服务的新特性。3M(Manifest,Method,Milestone)是SMF中的3个主要组成部分。其中Manifest是一个xml文件,用于定义服务的配置清单,主要包括服务的标识信息,服务的启动、停止方法,服务启动和停止对其它服务或者系统资源的依赖关系等。Method是一个脚本程序用来负责服务的启动、停止、刷新等工作。Milestone事实上与运行级别(run-level)相似。除此之外服务配置仓库(service configuration repository),profile,快照(Snapshots)也是其很重要的组成部分。那么SMF与传统的Unix后台服务管理机制相比较有什么突出的特点呢?

??? 1、可以恢复由软件故障、硬件故障、管理错误终止的服务

??? 2、服务之间可以定义相互间的依赖关系

??? 3、 它提供了比较全面的基于命令行的管理工具(svcs,svcadm,svccfg...)

??? 4、根据依赖关系可以并发启动服务,加快系统启动的速度

??? 5、引入服务配置库,提供服务配置库快照、备份、恢复功能

??? 这些功能方便了服务的管理,服务的可用性,可维护性。SMF提供了一定程度的服务自愈性,它也是Solaris 10系统可预测自愈功能(Predictive Self-Healing)的一部分。更多有关SMF 的信息请访问http://docs.sun.com/app/docs/doc/817-1985/6mhm8o5rh?a=view

???? 正是因为SOLARIS10采用了现在SMF方式的后台服务管理机制,使得很多熟悉UNIX的用Run Control (即配置/etc/rcn.xx)脚本方式来进行服务管理的工程师不了解如何在SOLARIS10 中来完成相同的工作。下面将给出一个简单的例子来说明如何使用SMF来将tomcat作为一个自动启动的后台服务。

将tomcat设置的系统服务

说明:本例中tomcat的安装目录是/usr/local/tomcat,实践中需要根据实际安装目录替换

A.在SMF的manifast下面创建一个用于存放SMF配置文件的目录。

#mkdir -p /var/svc/manifest/application/server/tomcat

B.Tomcat作为系统服务的配置文件,在A中创建的目录下面新建一个tomcat.xml文件,

此文件内容应该包含如下内如:

<?xml version="1.0"?>

<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">

<service_bundle type='manifest' name='Tomcat'>

<service name='application/server/tomcat' type='service' version='1'>

<single_instance />

<dependency

name='filesystem'

grouping='require_all'

restart_on='none'

type='service'>

<service_fmri value='svc:/system/filesystem/local' />

</dependency>

<exec_method

type='method'

name='start'

exec='/usr/local/tomcat/bin/startup.sh'

timeout_seconds='300' />

<exec_method

type='method'

name='stop'

exec='/usr/local/tomcat/bin/shutdown.sh'

timeout_seconds='300' />

<instance name='default' enabled='true' />

<stability value='Unstable' />

<template>

<common_name>

<loctext xml:lang='C'>Tomcat5.0</loctext>

</common_name>

</template>

</service>

</service_bundle>

C. 验证并使此配置服务生效。

#svccfg validate /var/svc/manifest/application/server/tomcat/tomcat.xml

D.将此服务导入的系统服务仓库。

#svccfg import /var/svc/manifest/application/server/tomcat/tomcat.xml

E.查看服务

# svcs tomcat

重新启动tomcat,

svcadm restart tomcat

问题就解决了

  相关解决方案