window下的tomcat手册之二【使用自己的jdk】

来源:互联网 发布:电玩游戏java实战 编辑:程序博客网 时间:2024/06/07 04:39

       其实关于给tomcat配置私有的jdk的方法,如果看过之前的文章http://blog.csdn.net/rainyspring4540/article/details/55511669   应该是可以自己配的,但还是觉得但拿出来记下结论以备后用,省着重复学习。

       下面的文章以http://blog.csdn.net/rainyspring4540/article/details/55511669   为基础。

       复习下启动顺序:

              第一种启动方式:startup.bat(寻找catalina.bat)-->catalina.bat(寻找CATALINA_HOME)->setclasspath.bat(寻找JAVA_HOME)->启动

              第二种启动方式:(在安装服务时触发)service.bat(寻找CATALINA_HOME、JAVA_HOME、tomcatN.exe和tomcatNw.exe,N对应tomcat版本)->启动

              备注:这里的catalina_home是tomcat目录

       一般情况,如果新下载的tocmat,不做任何配置,只要配置好JAVA_HOME(不用把JAVA_HOME配置在path里),是能够正常启动的,这毫无疑问。但是如果想让tomcat使用内部私有的jdk怎么办呢,具体方法我按照tomcat启动方式的不同分下类:

       第一种启动方式:通过双击或其他程序调用startup.bat(或牛X的干脆直接调用catalina.bat),启动服务的,配置私有jdk可以在catalina.bat的“setlocal”字样处,setlocal是指下面的变量对当前窗口和其调用的窗口(通过call命令)有效,关闭之后就失效了,不会影响系统的环境变量,具体位置如图:

       这是tomcat8的catalina.bat的位置

        这里tomcat6的位置:


     第二种启动方式:以服务的形式在window在启动,在service.bat的setlocal位置,也是差不多文件开头的位置,就不贴图了


     还有一种通用的方式:由于2中方式都访问了setclasspath.bat,可以都配置在该文件开头配置set JAVA_HOME=D:\common\Java\jdk8-32,也是可以的。

     但是问题出现了,如果多个地方都配置java_home,以哪个为准呢?

     测试发现:

            第一种启动方式(startup.bat方式)优先级从高到低:

                       setclasspath.bat->catalina.bat->startup.bat->系统变量(JAVA_HOME)

            第二种启动方式(服务形式)优先级从高到低:

                     service.bat->系统变量(JAVA_HOME)


这里补充一句:对于服务形式启动,每次修改service.bat后,必须重新执行service.bat install tomcatName才能生效,即重新注册



0 0