(转)linux运行tomcat时JRE_HOME显示不对怎么办?

PS:以前也没出现这些问题,重装了一下系统,感觉什么都让我撞上了。
Using CATALINA_BASE:   /usr/share/tomcat7
Using CATALINA_HOME:   /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
pyt@pyt-Ideapad-S205:/usr/share/tomcat7/bin$

我安装jdk 在/usr/lib/jvm/java-1.7.0-openjdk-i386,JRE_HOME 显示的和我安装的不对,但是能进tomcat.

解决方案:
因为你tomcat使用的环境变量是自己的或者是继承自当前用户的,所以在Linux里面不是说你设置了java_home就一定会使用这个,所以要么你都继承root的环境变量,都统一起来确保你的系统里面的环境变量都是使用的同一个,要么就单独指定要使用的jdk,

看下Tomcat的startup.sh,启动的时候它调用了catalina.sh,而catalina.sh则调用了setclasspath.sh。只要在setclasspath.sh声明环境变量就可以知道你这个tomcat使用哪个jdk,打开tomcat的bin目录下面的setclasspath.sh,添加上,路径自己修改,添加在开头就行

JAVA_HOME=/usr/lib/jvm/java
JRE_HOME=/usr/lib/jvm/java/jre

 

posted @   人艰不拆_zmc  阅读(2878)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2014-06-12 三维bfs(HUD1253胜利大逃亡)
2014-06-12 dfs模版
点击右上角即可分享
微信分享提示