tomcat 指定(自定义)JDK路径的两种方式
1.情景展示
tomcat7使用jdk1.7;tomcat8使用jdk1.8。两个tomcat在一台机器下同时启动,你会发现这两个tomcat使用的是一个版本的jdk,
那就是你配置过的JAVA_HOME。
查看你的Windows下当前Java版本
查看我的tomcat7引入的java版本
第一步:知道tomcat7的根目录下的startup.bat文件
{TOMCAT_HOME}/startup.bat,在最后一行添加:pause;,进行保存
这样,启动tomcat时,运行startup.bat文件的DOS命令就不会自动关闭。
这样,我们就可以看到tomcat所使用的几个主要的变量。
CATALINA_BASE:
CATALINA_HOME:
CATALINA_TMPDIR: 临时文件存放位置
JRE_HOME: JVM所在根路径(运行java文件)
CLASSPATH:
我们可以看到,tomcat7的java配置是jdk1.8,说明它也是从JAVA_HOME里拿到的。
2.解决方案
想要解决这个问题,可以这样:
tomcat8不用做修改,默认从环境变量JAVA_HOME中取;修改tomcat7中对于JAVA_HOME的引用。
修改tomcat7的jdk使用路径。
方案一:修改startup.bat。(推荐使用,简单粗暴)
文件位置:${TOMCAT_HOME}/bin/startup.bat
在正式代码开始前,添加JAVA_HOME和JRE_HOME的配置。
:配置java路径
set JAVA_HOME=D:\oracle-java-1.7-x86\jdk1.7.0_79
set JRE_HOME=D:\oracle-java-1.7-x86\jdk1.7.0_79\jre
保存,重启tomcat。
JRE的配置修改成功,将startup.bat中的pause;去掉即可。
教你一招:这里也可以使用相对路径哦。
比如:我的tomcat和jdk都防在D盘根目录下
set JAVA_HOME=..\oracle-java-1.7-x86\jdk1.7.0_79
set JRE_HOME=..\oracle-java-1.7-x86\jdk1.7.0_79\jre
路径正确,引用成功。
路径错误,引用失败,报错如下:
找不到JRE。
说明:通常我们在新服务器上部署项目时,往往需要自己提供tomcat和jdk,为了方便,我们就可以这样做:
将jdk放到Tomact目录下,在startup.bat文件中使用相对路径指定JAVA_HOME和JRE_HOME的位置。
这样,我们不仅省去了配置java环境变量的麻烦,还省去了为某个tomcat指定jdk的麻烦;
而且,tomcat想放到哪个磁盘的哪个目录下,位置可以随时进行迁移,而不必再次修改startup.bat文件中tomcat对于jdk的引用。
方案二:修改setclasspath.bat文件
位置:${TOMCAT_HOME}/bin/setclasspath.bat
第一步:修改java.exe的路径(Java类)
打开该文件,找到指定jdk的这句话
这就是为什么tomcat默认从环境变量中寻找jdk的原因。
:原来的
:set _RUNJAVA="%JRE_HOME%\bin\java.exe"
:修改后
set _RUNJAVA="D:\oracle-java-1.7-x86\jdk1.7.0_79\bin\java.exe"
修改成你的jdk所在路径,保存。
第二步:修改jdb.exe的路径(Java类调试器)
还是该文件,修改,保存,重启tomcat即可。
:修改前
set _RUNJDB="%JAVA_HOME%\bin\jdb.exe"
:修改后
set _RUNJDB="D:\oracle-java-1.7-x86\jdk1.7.0_79\bin\jdb.exe"
可以将原来的代码使用:进行注释掉,这样,后期也容易改回去。
java.exe:JVM
jdb.exe: JAVA调试器
注意:这里用方式一的pause;无法进行测试,因为我们并没有改JRE_HOME的值。
所以,测试的话,需要将jdk1.8编译好的项目放入到tomcat7中,倘若报错信息是:java版本不匹配,则证明已经修改成功。
tomcat 指定(自定义)JDK路径的两种方式的更多相关文章
- Servlet访问路径的两种方式、Servlet生命周期特点、计算服务启动后的访问次数、Get请求、Post请求
Servlet访问路径的两种方式: 1:注解 即在Servlet里写一个@WebServlet @WebServlet("/myServlet") 2:配置web.xml < ...
- 如何修改linux下tomcat指定的jdk路径
一般情况下,一台服务器只跑一个项目,只需根据所需项目,将linux默认的jdk环境配置好即可.某些时候一台服务器上会跑多个项目,而且各个项目需要的JDK版本各不相同,或者为了使业务独立开来,需要指定T ...
- maven 编译插件指定jdk版本的两种方式
第一种方式: <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration&g ...
- docker-compose up使用自定义的网段的两种方式(从其根源指定)
问题描述 还是那个研究安全大业的同事,在部署他的秘密武器,是用docker-compose部署的,有差不多20多个docker-compose.yml文件,然后由于docker-com ...
- nginx指定文件路径有两种方式root和alias
背景 一直没明白这个配置啥意思,反正凑合用吧,不过老凑合总不是个事,没搞明白更容易忘,别人问还答不上来.反正也很简单,就搞明白点记下来. 知识点 root实例: location ^~ /t/ { r ...
- EntityFramework Core 2.0自定义标量函数两种方式
前言 上一节我们讲完原始查询如何防止SQL注入问题同时并提供了几种方式.本节我们继续来讲讲EF Core 2.0中的新特性自定义标量函数. 自定义标量函数两种方式 在EF Core 2.0中我们可以将 ...
- JavaWeb应用中初始化Log4j的两种方式
本文主要介绍了普通JavaWeb应用(基于Tomcat)中初始化Log4j的两种方式: 1.通过增加 InitServlet ,设置令其自启动来初始化 Log4j . 2.通过监听器 ServletC ...
- 48-设置tomcat虚拟路径的两种方法(Eclipse、tomcat、IDEA)
设置tomcat虚拟路径的两种方法(Eclipse.tomcat.IDEA) 三种方式设置虚拟服务器路径如果我们要实现一个上传文件的功能,但是又想要上传的文件不会随着自己web服务器的重启而不能访问了 ...
- Springboot以Tomcat为容器实现http重定向到https的两种方式
1 简介 本文将介绍在Springboot中如何通过代码实现Http到Https的重定向,本文仅讲解Tomcat作为容器的情况,其它容器将在以后一一道来. 建议阅读之前的相关文章: (1) Sprin ...
随机推荐
- Kafka界面管理工具-kafkamanager
在上一篇文章<Linux安装Kafka>中,已经介绍了如何在Linux安装Kafka,以及Kafka的启动/关闭和创建发话题并产生消息和消费消息.这篇文章就介绍介绍Kafka管理界面(ka ...
- ECMAScript 6.0 简要学习
由于在学习vue的时候有许多自己不懂的语法,于是简单的学习一下ES6. 1.ES简介 ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版. ...
- logical函数
logical函数(逻辑函数) logical(x):x ~=0时,logical(x)=1:x = 0时,logical(x)=0
- IIS_CVE-2017-7269 IIS6.0远程代码执行漏洞复现
CVE-2017-7269 IIS6.0远程代码执行漏洞复现 一.漏洞描述 IIS 6.0默认不开启WebDAV,一旦开启了WebDAV,安装了IIS6.0的服务器将可能受到该漏洞的威胁. 二.影响版 ...
- docfx 简单使用方法、自动生成目录的工具
[摘要] 这是我编写的一个 Docfx 文档自动生成工具,只要写好 Markdown 文档,使用此工具可为目录.文件快速生成配置,然后直接使用 docfx 运行即可. https://github.c ...
- Ajax异步后台加载Html绑定不上事件
因项目需要,需要实时从后台动态加载html,开发过程中,遇到事件绑定不上,后来百度一番,大概意思:ajax是异步加载的,页面一开始绑定事件的时候,后台数据还没有传过来,就绑定事件,这个时候找不到这个d ...
- python 树与二叉树的实现
1.树的基本概念 1.树的定义 树的定义是递归的,树是一种递归的数据结构. 1)树的根结点没有前驱结点,除根结点之外所有结点有且只有一个前驱结点 2)树中所有结点可以有零个或多个后继结点 2.树的术语 ...
- 019.nexus搭建docker镜像仓库/maven仓库
一.安装docker CE 参考docker doc https://docs.docker.com/install/linux/docker-ce/centos/ 二.docker启动nexus3 ...
- web文件上传的总结(二)改变Apache默认post值来提高文件上传大小
上传的文件大小大于2MB的解决方法 #默认apache 允许上大小2MB #技术经理-->修改apache默认配置 php.ini (授权) (1)复制 php.ini -> php1. ...
- Windows下硬盘存储情况可视化工具--WinDirStat
WinDirStat是一款免费的用于Windows下硬盘空间可视化工具. 下载地址:https://windirstat.en.softonic.com/ 界面如图所示: 可以轻易看出硬盘空间使用情况 ...