写在前面:
由于项目使用jdk1.6开发,所以对应服务器应安装jdk1.6和tomcat6
---

1、环境变量的配置:

打开/etc/bashrc配置环境变量
JAVA_HOME=/usr/appsoft/jdk1.6.0_45/jre
export JAVA_HOME

CLASSPATH=\(JAVA_HOME/lib/dt.jar:\)JAVA_HOME/lib/tools.jar:$CLASSPATH
export CLASSPATH

CATALINA_BASE=/usr/appsoft/tomcat
export CATALINA_BASE

CATALINA_HOME=$CATALINA_BASE
export CATALINA_HOME

PATH=\(JAVA_HOME/bin:\)CATALINA_HOME/bin:$PATH
export PATH

2、使环境变量生效:

配置完环境变量之后执行:#source /etc/bashrc使环境变量生效

3、安装java运行环境:

a) 将jdk-6u45-linux-i586.bin上传到目标机器的/usr/appsoft/software目录下;

b) 在目标机器上打开一个终端,并在终端中执行如下命令:

cd /usr/appsoft/software

./jdk-6u45-linux-i586.bin

运行之后会在/usr/appsoft/software下有一个jdk1.6.0_45目录

c) 将运行jdk-6u45-linux-i586.bin解压得到的jdk1.6.0_45移至/usr/appsoft/下。具体为在终端中执行以下命令:

mv jdk1.6.0_45 /usr/appsoft

4、tomcat的安装:

Tomcat安装包的名称为apache-tomcat-6.0.20.zip,该包为二进制发布包,不需要编译,直接解压后就能使用。安装过程其实就是归档文件解压过程,并将解压获取到的目录进行改名,具体为:

a) 以二进制方式将apache-tomcat-6.0.20.zip上传至/usr/appsoft/software下。

b) 解压apache-tomcat-6.0.20.zip,即在终端中输入命令

unzip apache-tomcat-6.0.20.zip

c) 解压完成后/usr/appsoft/software下有文件夹apache-tomcat-6.0.20。将该文件夹移动到/usr/appsoft下,并改名为tomcat。在终端中输入命令

mv apache-tomcat-6.0.20 /usr/appsoft/tomcat

5、发布程序

将iesweb.zip上传到/usr/appsoft/tomcat/webapps下,并解压

unzip iesweb.zip

6、启动tomcat

进入到/usr/appsoft/tomcat/bin目录中,执行如下命令:

./catalina.sh run

执行# ps -ef |grep java | grep -v grep | grep tomcat查看tomcat进程
杀死tomcat进程的方法为:

kill -9 进程号

7、验证发布是否成功

在浏览器中输入:http://localhost:8080/iesweb/jsp/login.jsp验证是否出现登录界面,如出现登录界面但是验证码无法显示可以按照“问题处理”部分方法解决


问题处理:
● 安装java和tomcat时可能对jdk-6u45-linux-i586.bin和apache-tomcat-6.0.20.zip没有权限,需要加权限:# chmod +x jdk-6u45-linux-i586.bin apache-tomcat-6.0.20.zip
● 执行catalina.sh时没有权限需要加权限:# chmod +x catalina.sh
● 启动tomcat时报错:The BASEDIR environment variable is not defined correctly
This environment variable is needed to run this program,检查环境变量没有错误,可能是权限问题:# chmod 777 -R /usr/appsoft/tomcat/bin/
● 程序发布好之后出现“验证码无法显示的问题”:并报出错误: linux Could not initialize class java.awt.image.BufferedImage ,
解决方法:打开文件/usr/appsoft/tomcat/bin/catalina.sh,在所有类似以下代码:
"$_RUNJAVA" $JAVA_OPTS \(CATALINA_OPTS \
-Djava.endorsed.dirs="\)JAVA_ENDORSED_DIRS" -classpath "\(CLASSPATH" \
-Djava.security.manager \
-Djava.security.policy=="\)CATALINA_BASE"/conf/catalina.policy \
-Dcatalina.base="\(CATALINA_BASE" \
-Dcatalina.home="\)CATALINA_HOME" \
-Djava.io.tmpdir="\(CATALINA_TMPDIR" \
在尾部加上一句: -Djava.awt.headless=true \
修改后内容如下: exec "\)_RUNJAVA" $JAVA_OPTS \(CATALINA_OPTS \
-Djava.endorsed.dirs="\)JAVA_ENDORSED_DIRS" -classpath "\(CLASSPATH" \
-Dcatalina.base="\)CATALINA_BASE" \
-Dcatalina.home="\(CATALINA_HOME" \
-Djava.io.tmpdir="\)CATALINA_TMPDIR" \
-Djava.awt.headless=true \

以tomcat6.0为例,总共有七处这样的地方,修改好后即可。

--------------------------------------------------------------------------------
本文参考了以下文章:
● linux下tomcat6.0与jdk安装详细步骤 : http://blog.csdn.net/bingyingao/article/details/5614773
● TOMCAT-报错The BASEDIR environment variable is not defined correctly :http://blog.csdn.net/evils798/article/details/7284594



linux Could not initialize class java.awt.image.BufferedImage

网站验证码突然无法显示,并报如下错误。
javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class java.awt.image.BufferedImage

网上搜索了一下,在catalina.sh里加上一句“-Djava.awt.headless=true \”,问题解决。
经查,出现这种情况一般就是启动tomcat的用户无法访问Xserver,包括Xserver没有启动或者没有权限访问.

以下为转贴:
1.什么是Headless mode?
Headless模式是系统的一种配置模式。在该模式下,系统缺少了显示设备、键盘或鼠标。

2.何时使用和headless mode?
Headless模式虽然不是我们愿意见到的,但事实上我们却常常需要在该模式下工作,尤其是服务器端程序开发者。因为服务器(如提供Web服务的主机)往往可能缺少前述设备,但又需要使用他们提供的功能,生成相应的数据,以提供给客户端(如浏览器所在的配有相关的显示设备、键盘和鼠标的主机)。

3.如何使用和Headless mode?
一般是在程序开始激活headless模式,告诉程序,现在你要工作在Headless mode下,就不要指望硬件帮忙了,你得自力更生,依靠系统的计算能力模拟出这些特性来:
System.setProperty("Java.awt.headless","true");

修改\({TOMCAT_HOME}/bin/catalina.sh或\){TOMCAT_HOME}/bin/catalina.bat文件:
在所有类似以下代码:
"$_RUNJAVA" $JAVA_OPTS \(CATALINA_OPTS \
-Djava.endorsed.dirs="\)JAVA_ENDORSED_DIRS" -classpath "\(CLASSPATH" \
-Djava.security.manager \
-Djava.security.policy=="\)CATALINA_BASE"/conf/catalina.policy \
-Dcatalina.base="\(CATALINA_BASE" \
-Dcatalina.home="\)CATALINA_HOME" \
-Djava.io.tmpdir="\(CATALINA_TMPDIR" \
在尾部加上一句: -Djava.awt.headless=true \
修改后内容如下: exec "\)_RUNJAVA" $JAVA_OPTS \(CATALINA_OPTS \
-Djava.endorsed.dirs="\)JAVA_ENDORSED_DIRS" -classpath "\(CLASSPATH" \
-Dcatalina.base="\)CATALINA_BASE" \
-Dcatalina.home="\(CATALINA_HOME" \
-Djava.io.tmpdir="\)CATALINA_TMPDIR" \
-Djava.awt.headless=true \

以tomcat6.0为例,总共有七处这样的地方,修改好后即可。

linux 下tomcat的安装的更多相关文章

  1. Linux下tomcat的安装详解

    Linux下tomcat的安装详解 来源: ChinaUnix博客 日期: 2007.01.21 22:59 (共有0条评论) 我要评论 一,安装前的准备:1,Linux版本:我的是企业版.(至于红帽 ...

  2. Linux下tomcat的安装与项目部署

    最近在linux下安装了jdk,为了圆我以前的心愿,把tomcat也安装了,顺便部署个项目,也算是小又成就感 废话不说了,直接上过程 一.下载安装对应的jdk,并配置Java环境. 有关jdk的安装请 ...

  3. Linux下Tomcat的安装和部署

    一.安装tomcat 1.下载tomcat安装包apache-tomcat-7.0.62.tar.gz和jdk1.7 2.安装tomcat,将apache-tomcat-7.0.62.tar.gz复制 ...

  4. linux下tomcat的安装和配置

    安装前要求: 1. 安装java环境. 2. 配置java环境变量 开始了: 1. 在官网下载tomcat:http://tomcat.apache.org/ 2. linux环境选择.zip或者.t ...

  5. Linux下Tomcat的安装配置

    一.下载安装对应的jdk,并配置Java环境. 官网下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-dow ...

  6. linux下tomcat的安装

    本文主要内容: (1)安装apr,这是 Apache 为了提升 Tomcat 的性能搞的一套本地化 Socket, Thread, IO 组件也就是说它有高级 IO 功能, 操作系统级别的功能调用, ...

  7. Linux下Tomcat的安装配置 去掉应用名称

    http://blog.csdn.net/zhuying_linux/article/details/6583096/ Tomcat下为每个Web应用配置不同的访问端口 http://www.linu ...

  8. linux下使用yum安装mysql、tomcat、httpd

    一.linux下使用yum安装mysql   1.安装 查看有没有安装过:           yum list installed mysql*           rpm -qa | grep m ...

  9. linux下Tomcat 安装后执行startup.sh,出现– Cannot find …bin/catalina.sh

    linux下Tomcat 安装后执行startup.sh,出现– Cannot find …bin/catalina.sh 是因为权限不够,执行以下命令就可以: chmod +x startup.sh ...

随机推荐

  1. python3 time模块与datetime模块

    time模块 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平 ...

  2. jqPaginator 项目中做分页的应用技巧

    最近做后台管理系统,分页用到的不少,项目中其实已经有分页功能的组件但是不够高度自定义,于是就找到了 jqPaginator 高度自定义的Html结构 初始化引用如下: $("#paginat ...

  3. C#中设置TextBox控件中仅可以输入数字且设置上限

    首先设置只可以输入数字: 首先设置TextBox控件的KeyPress事件:当用户按下的键盘的键不在数字位的话,就禁止输入 private void textBox1_KeyPress(object ...

  4. Add Two Numbers 2015年6月8日

    You are given two linked lists representing two non-negative numbers. The digits are stored in rever ...

  5. SPFA求单源最短路径

    序 求最短路径的算法有很多,各有优劣. 比如Dijkstra(及其堆(STL-priority_queue)优化),但是无法处理负环的情况: 比如O(n^3)的Floyd算法:比如Bellman-Fo ...

  6. 传统平面广告已OUT出局,VR全景异军突起——VR全景智慧城市

    VR,近两年异军突起的"黑科技".从1935年斯坦利·温鲍姆首次在小说中描述VR眼镜,到如今PC头盔.VR分体机以及VR一体机的相继问世,VR自身已从虚拟走向现实.而当硬件迭代逐步 ...

  7. 搭建eureka服务

    1.pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www ...

  8. java mvc框架系列总结ssh,ssm,servlet

    2016年10月3日 10:36:40 一直以来都很想写属于自己的博客,一来可以分享自己的学习经验,二来可以及时总结,毕竟博客是写给所有人看的,需要更加仔细的注意每个细节,而不是仅仅让自己看懂. 学了 ...

  9. python标准库]Hashlib

    hashlib主要提供字符加密功能,将md5和sha模块整合到了一起,支持md5,sha1, sha224, sha256, sha384, sha512等算法. 在学习hashlib模块之前,先来看 ...

  10. Coursera 机器学习笔记(八)

    主要为第十周内容:大规模机器学习.案例.总结 (一)随机梯度下降法 如果有一个大规模的训练集,普通的批量梯度下降法需要计算整个训练集的误差的平方和,如果学习方法需要迭代20次,这已经是非常大的计算代价 ...