简介
目前遇到这样一个情况,我们的软件只有部署在JDK1.7环境的tomcat下才会比较稳定。而客户的服务器上装的是JDK1.8,而且他们的环境还不能变,因为服务器中的其他程序都是依赖JDK1.8的环境开发的。他们又不能单独部署。后来经过查资料发现可以设置tomcat指定JDK环境的版本和JDK的路径。
下面就把指定的步骤和大家说下,主要是修改文件。根据系统的不同,分为windows的配置和linux的配置。
windows
1、解压下载的tomcat
2、找到bin
下的setclasspath.bat
文件;在文件的开始出添加如下代码
1 2 |
set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51 set JRE_HOME=D:\Program Files\Java\jdk7\jre7 |
上面的意思是设定JAVA_HOME
和JRE_HOME
的路径
通过这里我们可以看出可以不设置JDK的环境变量
linux
在bin
下找到setclasspath.sh
,在文件的最开始加入如下代码
1 2 |
export JAVA_HOME=/home/jdk/Java\jdk7\jdk1.7.0_51 export JRE_HOME=/home/jdk/Java\jdk7\jre7 |
修改了setclasspath
文件之后,tomcat在启动时便使用设定的JDK。
但是为什么这样设置之后就可以呢?
我们都知道启动tomcat
可以通过运行bin
下的startup.bat
,startup.bat
会调用catalina.bat
文件,而catalina.bat
会调用setclasspath.bat
文件来获取JAVA_HOME
和JRE_HOME
这两个环境变量的值,因此若要在tomcat
启动时指向特定的JDK
,则需在setclasspath.bat
文件的开头处加上JAVA_HOME
和JRE_HOME
。http://791202.com/
基于上面的运行方式,还有第二种修改方式,如下:
1、修改tomcat/bin/catalina.bat
,增加
1 |
set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51 |
2、修改tomcat/bin/setclasspath.bat
,同样增加
1 2 |
set JAVA_HOME=D:\Program Files\Java\jdk7\jdk1.7.0_51 set JRE_HOME=D:\Program Files\Java\jdk7\jre7 |
这两种方式使用任何一种都可以实现修改tomcat的依赖JDK环境,同时可以不配置JDK的环境变量。