zoukankan      html  css  js  c++  java
  • Neither the JAVA_HOME nor the JRE_HOME environment variable is defined

    linux 下 启动tomcat 报:

    Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
    At least one of these environment variable is needed to run this program

    先看Tomcat的startup.bat,它调用了catalina.bat,而catalina.bat则调用了setclasspath.bat。只要在setclasspath.bat的开头声明环境变量,打开tomcat的bin目录下面的setclasspath.sh,添加红色部分,路径自己修改。windows  下用set。



    #!/bin/sh 
    # ----------------------------------------------------------------------------- 
    # Set CLASSPATH and Java options 
    # 
    # $Id: setclasspath.sh 467182 2006-10-23 23:47:06Z markt $ 
    # ----------------------------------------------------------------------------- 
    
    export JAVA_HOME=/usr/lib/jvm/java-7-sun 
    export JRE_HOME=/usr/lib/jvm/java-7-sun/jre 
    
    # First clear out the user classpath 
    CLASSPATH= 
    
    # Make sure prerequisite environment variables are set 
    if [ -z "$JAVA_HOME" -a -z "$JRE_HOME" ]; then 
    # Bugzilla 37284 
    if $darwin && [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home" ]; then 
    export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home" 
    else 
    echo "Neither the JAVA_HOME nor the JRE_HOME environment variable is defined" 
    echo "At least one of these environment variable is needed to run this program" 
    exit 1 
    fi 
    fi 
    if [ -z "$JAVA_HOME" -a "$1" = "debug" ]; then 
    echo "JAVA_HOME should point to a JDK in order to run in debug mode." 
    exit 1 
    fi 
    if [ -z "$JRE_HOME" ]; then 
    JRE_HOME="$JAVA_HOME" 
    fi 
    
    # If we're running under jdb, we need a full jdk. 
    if [ "$1" = "debug" -o "$1" = "javac" ] ; then 
    if [ "$os400" = "true" ]; then 
    if [ ! -x "$JAVA_HOME"/bin/java -o ! -x "$JAVA_HOME"/bin/javac ]; then 
    echo "The JAVA_HOME environment variable is not defined correctly" 
    echo "This environment variable is needed to run this program" 
    echo "NB: JAVA_HOME should point to a JDK not a JRE" 
    exit 1 
    fi 
    else 
    if [ ! -x "$JAVA_HOME"/bin/java -o ! -x "$JAVA_HOME"/bin/jdb -o ! -x "$JAVA_HOME"/bin/javac ]; then 
    echo "The JAVA_HOME environment variable is not defined correctly" 
    echo "This environment variable is needed to run this program" 
    echo "NB: JAVA_HOME should point to a JDK not a JRE" 
    exit 1 
    fi 
    fi 
    fi 
    

      

  • 相关阅读:
    我的JAVA之旅(二)初识JAVA
    ORACLE并发处理
    我的JAVA之旅(一)安装配置
    我的JAVA之旅(三) 元素语法
    改变一生的五句话
    InstallShield集成安装MSDE2000最小版本(三) fishout特许授权发布
    IS2009修改XML File 奕婷特许授权发布
    SQL Server中多个表格求出相同列和不同列(答案来自CSDN上SQL专家的回答)
    InstallShield集成安装MSDE2000最小版本(二) fishout特许授权发布
    Installshield停止操作系统进程的代码 IS6及以上版本适用
  • 原文地址:https://www.cnblogs.com/xiohao/p/5814968.html
Copyright © 2011-2022 走看看