• Tomcat与Jre绿色环境配置(生产环境)


            Tomcat运行时需要jre的支持,一般有两种方式,一种是用jdk带的jre,另一种无需安装jdk只利用jre。这两种方式的区别在于启动的 时候是利用JAVA_HOME还是利用JRE_HOME(参加Tomcat目录下的RUNNING.txt)。第一种的好处在于编译跟运行时用的是同样的 环境,引用外部包的时候只要能编译通过,运行时一般是没有问题的,即使不把外部包拷贝到Tomcat下的lib目录也可以正常运行。第二种的好处在于部署 的时候比较精简,不需要带上jdk,解压缩后环境设置一下即可。

            利用第二种方式,可以实现Tomcat的绿化部署,将Tomcat跟jre打包成zip文件,解压即可,启动时利用批处理设置一下环境变量,下面是我自己的一些脚本:

    直接将jre拷贝到Tomcat主目录下,这里为jre7;以下批处理文件也直接放在Tomcat主目录下,如果放到其他目录可以自行修改。

    解压缩以后,为防止window防火墙拦截,直接用命令行打开对应8080端口,可根据具体环境修改:
    Java代码  收藏代码
    1. @echo off  
    2. ::open the firewall port  
    3. netsh firewall add portopening protocol = ALL port = 8080 name = Tomcat mode = ENABLE  
    4. exit  
     设置环境变量并启动Tomcat:
    Java代码  收藏代码
    1. @echo off  
    2. set JRE_HOME=%cd%jre7  
    3. .instartup.bat  
     关闭Tomcat:
    Java代码  收藏代码
    1. @echo off  
    2. set JRE_HOME=%cd%jre7  
    3. .inshutdown.bat  
     
    如果不想出现Tomcat窗口,可以将Tomcat安装为服务,利用bin目录的service.bat进行安装。但注意service.bat中默认只查找jdk路径,如果只设置JRE_HOME的话,会导致安装失败,如果设置JAVA_HOME的话可以直接启动。为了只用jre进行绿化,需要修改service.bat内容,具体把下面两行:
    Java代码  收藏代码
    1. rem Set the server jvm from JAVA_HOME  
    2. set "PR_JVM=%JAVA_HOME%jreinserverjvm.dll"  
    3. if exist "%PR_JVM%" goto foundJvm  
    4. rem Set the client jvm from JAVA_HOME  
    5. set "PR_JVM=%JAVA_HOME%jreinclientjvm.dll"  
    6. if exist "%PR_JVM%" goto foundJvm  
     改为:
    Java代码  收藏代码
    1. rem Set the server jvm from JAVA_HOME  
    2. set "PR_JVM=%cd%jre7inclientjvm.dll"  
    3. if exist "%PR_JVM%" goto foundJvm  
    4. rem Set the client jvm from JAVA_HOME  
    5. set "PR_JVM=%cd%jre7inclientjvm.dll"  
    6. if exist "%PR_JVM%" goto foundJvm  
     这样,就可以利用下面脚本进行服务启动了,放在Tomcat主目录下,如果没安装服务则安装,没启动就启动:
    Java代码  收藏代码
    1. @echo off  
    2. set JRE_HOME=%cd%jre7  
    3. sc query tomcat6 | find "SERVICE_NAME: tomcat6" > nul  
    4. if %errorlevel% EQU 0 (echo Tomcat6已经安装) else (call .inservice.bat install)  
    5. sc query tomcat6 | find "STATE              : 4  RUNNING" > nul  
    6. if %errorlevel% EQU 0 (echo Tomcat6已经启动) else (net start tomcat6)  
    7. exit  
     
  • 相关阅读:
    几种mesh 数据文件格式
    ceres之求解器
    EF Core03
    EF Core01
    网址收藏
    MediatR基础用法(事件)
    EF Core04
    日志系统Logging
    CSDN不登录复制代码
    WIN11 Windows Mobile 设备中心打开
  • 原文地址:https://www.cnblogs.com/u0mo5/p/5091162.html
Copyright © 2020-2023  润新知