apache-tomcat-6.0.29,免安装的那种,解压缩就可用。但是启动的时候,tomcat一闪而过。在命令行中运行tomcat,会报the JAVA_HOME nor the JRE_HOME environment variable is defined 。
问题原因:较新版本的JDK(例如我使用的JDK1.6)安装完之后,不会自动登记环境变量JAVA_HOME,JRE_HOME。更何况我这种免安装的。对于此问题,我们的做法是:
查看Tomcat的startup.bat文件之后,你会发现它调用了catalina.bat,而catalina.bat则调用了setclasspath.bat。只要在setclasspath.bat的开头声明环境变量,如我的就是:
?
rem ---------------------------------------------------------------------------
rem Set CLASSPATH and Java options
rem
rem $Id: setclasspath.bat 505241 2007-02-09 10:22:58Z jfclere $
rem ---------------------------------------------------------------------------
set JAVA_HOME=c:Javajdk1.6.0
set JRE_HOME=c:Javajre7
在上述位置,加上蓝色字体,设置JAVA_HOME和JRE_HOME的安装目录即可。
这样在每次运行startup.bat时就注册了JAVA_HOME,JRE_HOME。控制台窗口关闭后,这两个变量也将消失,不会再占用内存。
当我们访问的时候会无法登录管理页面:
修改,设置或者查找tomcat的用户名和密码,
找到你的tomcat的安装路径,找到文件夹conf,找到文件tomcat-users.xml。
如果你的文件是空的,则在文件中加入下面代码:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="admin" password="admin" roles="admin,manager"/>
</tomcat-users>