llinux 运行tomcat时JRE_HOME显示不对 怎么办?
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 显示的和我安装的不对,而且进8080网页也没用
问题补充:
弄了一个晚上了,求救啊,都有想把linux卸掉的冲动
pyt@pyt-Ideapad-S205:/usr/share/tomcat7/bin$ echo $JAVA_HOME
/usr/lib/jvm/java-1.7.0-openjdk-i386
pyt@pyt-Ideapad-S205:/usr/share/tomcat7/bin$
不会是版本不配吧,jdk 1.7+tomcat7
------最佳解决方案--------------------
因为你tomcat使用的环境变量是自己的或者是继承自当前用户的,所以在Linux里面不是说你设置了java_home就一定会使用这个,所以要么你都继承root的环境变量,都统一起来确保你的系统里面的环境变量都是使用的同一个,要么就单独指定要使用的jdk,
看下Tomcat的startup.sh,启动的时候它调用了catalina.sh,而catalina.sh则调用了setclasspath.sh。只要在setclasspath.sh声明环境变量就可以知道你这个tomcat使用哪个jdk,打开tomcat的bin目录下面的setclasspath.sh,添加上,路径自己修改,添加在开头就行
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export JRE_HOME=/usr/lib/jvm/java-6-sun/jre
------其他解决方案--------------------setclasspath.bat加:
set JAVA_HOME=/opt/java/jdk1.6.0_24
set JRE_HOME=/opt/java/jdk1.6.0_24/jre
在catalina.sh里添加了:
JAVA_HOME=/opt/java/jdk1.6.0_24
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar)
执行需进入到bin目录,然后sudo ./startup.sh
source /etc/profile //立即生效
检测环境变量的值:
echo $JAVA_HOME
------其他解决方案--------------------linux的环境变量分为全局的和局部的,用户不同使用的配置文件也不一样,可以集成root用户的环境变量。
你tomcat启动的时候显示use 的java环境变量可以在你的用户配置文件里面设置,也可以在tomcat里面设置
------其他解决方案--------------------你可以强制设置tomcat的java_home:
vim /root/apache-tomcat-7.0.30/bin/catalina.sh
export JAVA_HOME=/root/jdk1.7.0_07
更多资料请参见:
Tomcat专题
------其他解决方案--------------------你敲命令java -version看看目前啥提示,其次vi一个新文件,自己 写个JAVA的类,来单独 测试你的JAVA环境 是否OK,最后再看你的TOMCAT环境
------其他解决方案--------------------你的JAVA_HOME配置的不对吧,应该配置到你jdk的目录下啊,你的JDK不在user下放着了吧
------其他解决方案--------------------pyt@pyt-Ideapad-S205:/usr$ find -name "tools.jar"
./lib/jvm/java-7-openjdk-i386/lib/tools.jar
./lib/jvm/java-1.5.0-gcj-4.7/lib/tools.jar
pyt@pyt-Ideapad-S205:/usr$
这两个路径我都试了,都不对,应该没错吧?
------其他解决方案--------------------我的是ubuntu自己安装路径,然后我去找的,不知到对不对
------其他解决方案-------------------- JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-i386
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
PATH=/usr/lib/jvm/java-1.7.0-openjdk-i386/bin:$PATH
export JAVA_HOME CLASSPATH PATH
TOMCAT_HOME=/usr/share/tomcat7
export TOMCAT_HOME
我执行了echo, 能行,但还是:
Using CATALINA_BASE: /usr/share/tomcat7
Using CATALINA_HOME: /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME: /usr