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端口,可根据具体环境修改:
- @echo off
- ::open the firewall port
- netsh firewall add portopening protocol = ALL port = 8080 name = Tomcat mode = ENABLE
- exit
- @echo off
- set JRE_HOME=%cd%\jre7
- .\bin\startup.bat
- @echo off
- set JRE_HOME=%cd%\jre7
- .\bin\shutdown.bat
如果不想出现Tomcat窗口,可以将Tomcat安装为服务,利用bin目录的service.bat进行安装。但注意service.bat中默认只查找jdk路径,如果只设置JRE_HOME的话,会导致安装失败,如果设置JAVA_HOME的话可以直接启动。为了只用jre进行绿化,需要修改service.bat内容,具体把下面两行:
- rem Set the server jvm from JAVA_HOME
- set "PR_JVM=%JAVA_HOME%\jre\bin\server\jvm.dll"
- if exist "%PR_JVM%" goto foundJvm
- rem Set the client jvm from JAVA_HOME
- set "PR_JVM=%JAVA_HOME%\jre\bin\client\jvm.dll"
- if exist "%PR_JVM%" goto foundJvm
- rem Set the server jvm from JAVA_HOME
- set "PR_JVM=%cd%\jre7\bin\client\jvm.dll"
- if exist "%PR_JVM%" goto foundJvm
- rem Set the client jvm from JAVA_HOME
- set "PR_JVM=%cd%\jre7\bin\client\jvm.dll"
- if exist "%PR_JVM%" goto foundJvm
- @echo off
- set JRE_HOME=%cd%\jre7
- sc query tomcat6 | find "SERVICE_NAME: tomcat6" > nul
- if %errorlevel% EQU 0 (echo Tomcat6已经安装) else (call .\bin\service.bat install)
- sc query tomcat6 | find "STATE : 4 RUNNING" > nul
- if %errorlevel% EQU 0 (echo Tomcat6已经启动) else (net start tomcat6)
- exit
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架