在安装idel的jdk的时候报 Error:NB:JAVA_HOME should point to a JDK not a JRE

解决方法是:

首先检查环境:

cmd里运行

输入javac跟java命令 正常

输入 if not exist "%JAVA_HOME%\bin\java.exe" echo "%JAVA_HOME%\bin\java.exe" 回车

结果:"C:\Program Files\Java\bin\java.exe"  也并没有分号,说明环境配置正确

那就应该是tomcat的问题,在网上查找了几种方式:

一:在catalina.bat中的 
set CURRENT_DIR=%cd%后加入一行 
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_13(因人而异) 
将你的当前JDK目录写死进去,运行成功,这样也省得你Tomcat自个儿去找了。这个方法其实很野蛮,但总比没办法好。

关于tomcat不能启动的问题(NB:JAVA_HOME should point to a JDK not a JRE)

今天在虚拟机上装tomcat6  启动时候遇到问题:命令窗口闪一下就消失

在cmd里面运行startup.bat 得到

the java_home environment variable is not defined correctly

This environment variable is needed to run this program

NB: java_home should point to a jdk not a jre

意思是JAVA_HOME应该指向JDK而不是JRE

首先检查环境:

cmd里运行

输入javac跟java命令 正常

输入 if not exist "%JAVA_HOME%\bin\java.exe" echo "%JAVA_HOME%\bin\java.exe" 回车

结果:"C:\Program Files\Java\bin\java.exe"  也并没有分号,说明环境配置正确

那就应该是tomcat的问题,在网上查找了几种方式:

一:在catalina.bat中的 
set CURRENT_DIR=%cd%后加入一行 
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_13(因人而异) 
将你的当前JDK目录写死进去,运行成功,这样也省得你Tomcat自个儿去找了。这个方法其实很野蛮,但总比没办法好。 测试不成功

二:在setclasspath.bat的头部定义了JAVA_HOME和JRE_HOME的值,那么在这里手动设置JAVA_HOME变量

rem ---------------------------------------------------------------------------
rem Set CLASSPATH and Java options
rem
rem $Id: setclasspath.bat 505241 2007-02-09 10:22:58Z jfclere $
rem ---------------------------------------------------------------------------

set JAVA_HOME=C:\Program Files\Java\jdk1.5.0_05
set JRE_HOME=C:\Program Files\Java\jre1.5.0_05

rem Make sure prerequisite environment variables are set
if not "%JAVA_HOME%" == "" goto gotJdkHome
if not "%JRE_HOME%" == "" goto gotJreHome
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
goto exit

......................................................................................................................................... 测试不成功

三:解决我这个问题的方法:

编辑startup.bat文件,在@echo off
if "%OS%" == "Windows_NT" setlocal 后加一句:
java -jar -Duser.dir="d:tomcat_6.0.14" "d:tomcat_6.0.14\bin\bootstrap.jar" start
保存,运行startup.bat,搞定。这个方法貌似是最暴力的方法。。。直接指定你tomcat路径然后直接启动服务。。。  测试成功

(网上搜到的)其他一些关于tomcat启动时的奇怪问题:

a.Tomcat无法从"开始"中启动,但可以在startup.bat中启动

JDK版本过低

b.启动的时候,加载信息的提示界面在屏幕上停留几秒钟就消失了,同时,tomcat的应用程序也自动关闭

在server.xml的最后,/host之上,应该写上的是:content

c.TOMCAT启动时有一些显示,但仍会自动关闭,无法启动.

    可能是地址被占用,运行桌面上的"关闭TOMCAT"快捷方式,执行完毕后再启动TOMCAT.

d.TOMCAT启动时一闪而过,无法启动.

可能是端口被占用,可找到TOMCAT的安装目录下的SERVER.XML文件,如..\EAM2003\conf\SERVER.XML,用记事本打开此文件,查找8080,如果找到,就将8080改为8088.

e.TOMCAT能正常启动,可见到登录界面,但登录不进系统

   可能是IE的设置问题,将所有设置回复成默认设置,关闭"上网助手"或其他IE插件的"拦截弹出窗口"的功能.

最后:

解读startup.bat文件

@echo off      //DOS在运行批处理时,会依次执行批处理中的每条命令,并且会在显示器上显示,如果你不想让它们显示,可以加一个“echo off”。当然,“echo off”也是命令,它本身也会显示,如果连这条也不显示,就在前面加个“@”。

if "%OS%" == "Windows_NT" setlocal     //判断当前系统是否是window系统

rem ---------------------------------------------------------------------------   //rem 是注释(下同)

rem Start script for the CATALINA Server

rem

rem $Id: startup.bat 302918 2004-05-27 18:25:11Z yoavs $

rem ---------------------------------------------------------------------------

rem Guess CATALINA_HOME if not defined

set CURRENT_DIR=%cd%           //设置当前目录

if not "%CATALINA_HOME%" == "" goto gotHome //如果设置了CATALINA_HOME环境变量 ,就直接到下面的gotHome处

set CATALINA_HOME=%CURRENT_DIR% //如果没有设置CATALINA_HOME,就设置CATALINA_HOME为当前目录(其实这里她假设你进入tomcat的安装目录)

if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome//判断一下catalina.bat是否找到了,找到了就直接到下面的gotHome处

cd .. //这里他是假设你开始已经进入到了tomcat的bin目录,所以就退到上一级目录

set CATALINA_HOME=%cd%//现在再设置CATALINA_HOME为tomcat的安装目录

cd %CURRENT_DIR% //这里是进入dos的当前目录

:gotHome

if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome   //再次判断catalina.bat是否找到了,找到了就直接到下面的okHome处,没有的话,就只能提示你啦!

echo The CATALINA_HOME environment variable is not defined correctly

echo This environment variable is needed to run this program

goto end

:okHome

set EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat   //设置要执行的文件

rem Check that target executable exists

if exist "%EXECUTABLE%" goto okExec //再次判断catalina.bat是否找到了,找到了就直接到下面的okExec处,没有的话,就提示。

echo Cannot find %EXECUTABLE%

echo This file is needed to run this program

goto end

:okExec

rem Get remaining unshifted command line arguments and save them in the

set CMD_LINE_ARGS= //这里是设置参数

:setArgs

if ""%1""=="""" goto doneSetArgs //判断参数是否加入完成

set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 //将参数组成一行,接在后面

shift

goto setArgs

:doneSetArgs

call "%EXECUTABLE%" start %CMD_LINE_ARGS% //执行catalina.bat,最好将这行改为:echo "%EXECUTABLE%" start %CMD_LINE_ARGS%       以便阅读、理解本文件的作用

时间: 2024-08-27 00:47:17

在安装idel的jdk的时候报 Error:NB:JAVA_HOME should point to a JDK not a JRE的相关文章

TOMCAT启动提示NB: JAVA_HOME should point to a JDK not a JRE解决

本人使用的Tomcat版本为apache-tomcat-6.0.18(用的是解压包),解压路径为E:\apache-tomcat-6.0.18\apache-tomcat-6.0.18\,我如果部署在myEclipse里启动可以正常启动,当然也可以访问我的工程,但是如果我直接在tomcat源文件bin里启动startup.bat的话里变就给我显示: The JAVA_HOME environment variable is not defined correctlyThis environmen

虚拟机下安装EPEL源后YUM安装工具报ERROR -1错误的解决方法

使用rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/6/i386/epel-release-6-6.noarch.rpm(我是32位的系统) 安装EPEL源后使用YUM安装工具安装软件后出现如下错误: epel/primary_db                                                                  | 2.7 MB     00:00     http://ftp.cuhk.edu.h

cocoaPods安装成功终端代码(期间报error: RPC failed; result=56, HTTP code = 200)

Last login: Sat Oct 15 23:30:24 on ttys002 Sivek_lindeMacBook-Pro:~ Sivek_lin$ sudo gem update --system Password: Latest version currently installed. Aborting. Sivek_lindeMacBook-Pro:~ Sivek_lin$ $gem sources -l -bash: sources: command not found Sive

windows tomcat 启动报错TOMCAT JAVA_HOME or JRE_HOME environment variable is not defined correctly

问题描述: TOMCAT JAVA_HOME or JRE_HOME environment variable is not defined correctly 报错信息如下: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;提示找不到java_home各jre

Ubuntu下安装了java但启动eclipse报错说没装java

参考资料:http://blog.csdn.net/happyteafriends/article/details/8290950 一.问题 在Ubuntu下安装了java并在~/.bashrc配置了环境变量,在终端可运行java等命令,但启动eclipse报错说缺少jre或jdk: ”a java runtime environment jre or java development kit jdk....“ 二.解决 在在/etc/environment里补充上jdk bin的路径即可. 三

启动IDEA 报 Error:java: JDK isn't specified for module '******' 错误

Error:java: JDK isn't specified for module '******' 翻译:错误:java: JDK没有为模块“changgoui -eureka”指定 原因:当前模块指定的jdk有问题,没有安装jdk,可能不存在 或者是用来idea自带的jdk,有问题 解决:File -- Project Structure -- Modules 启动IDEA 报 Error:java: JDK isn't specified for module '******' 错误 原

windows7旗舰版64位下安装、破解及运行QTP11报错

说明:如果你出现了以下几种情况,希望能解决你的问题:如果没有,就当路过. 1.安装qtp11时报vc++ 2005缺少,但怎么也不能成功安装 解决方法: 1.找到qtp安装包里面的vc++ 2005组件 QuickTest\CHS\prerequisites\vc2005_sp1_redist. 2.运行vcredist_x86.exe文件,如果安装失败,修改后缀名为压缩文件,如:zip.rar,解压文件后重新运行解压后的文件. 2.网上介绍用mgn-mqt82.exe的方法破解qtp11失败

Ubuntu安装NRPE(Nagios插件)报:Cannot find ssl headers解决方法!

Linux系统:Ubuntu 12.04 Nagios Linux客户端需要安装NRPE进行数据收集,如果在Ubuntu系统下安装过程中遇到下面的错误提示:checking for SSL libraries... configure: error: Cannot find ssl libraries 那么可能是缺少sudo apt-get install opensslsudo apt-get install libssl-dev 如果nrpe-2.15# ./configure   还是一样

一台安装5.5与5.6报unknown variable 'log-slow-queries=/home/mysql/localhost-slow.log' 错解决方案

一台中有两个MYSQL,基本一个5.5(rpm包)配置文件/etc/my.cnf,别外一个5.6 配置文件/home/app/mysql5.6/my.cnf 5.6上报错 2016-01-27 00:09:03 16056 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.27-rel75.0 started; log sequence number 1763792 2016-01-27 00:09:03 16056 [ERR