windows下直接点击startup.bat启动tomcat服务示例代码_DOS/BAT

在XP上明明已经安装了JDK1.5并设置好了JAVA_HOME,可偏偏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;提示找不到java_home各jre_home路径,何解?

原因不知道了,下面来看解决办法:

1、分析startup.bat启动脚本:发现其调用了catalina.bat,而catalina.bat调用了setclasspath.bat

2、在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

:gotJreHome

if not exist "%JRE_HOME%\bin\java.exe" goto noJavaHome

if not exist "%JRE_HOME%\bin\javaw.exe" goto noJavaHome

if not ""%1"" == ""debug"" goto okJavaHome

echo JAVA_HOME should point to a JDK in order to run in debug mode.

goto exit

:gotJdkHome

if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome

if not exist "%JAVA_HOME%\bin\javaw.exe" goto noJavaHome

if not exist "%JAVA_HOME%\bin\jdb.exe" goto noJavaHome

if not exist "%JAVA_HOME%\bin\javac.exe" goto noJavaHome

if not "%JRE_HOME%" == "" goto okJavaHome

set JRE_HOME=%JAVA_HOME%

goto okJavaHome

:noJavaHome

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

goto exit

:okJavaHome

if not "?SEDIR%" == "" goto gotBasedir

echo The BASEDIR environment variable is not defined

echo This environment variable is needed to run this program

goto exit

:gotBasedir

if exist "?SEDIR%\bin\setclasspath.bat" goto okBasedir

echo The BASEDIR environment variable is not defined correctly

echo This environment variable is needed to run this program

goto exit

:okBasedir

rem Set the default -Djava.endorsed.dirs argument

set JAVA_ENDORSED_DIRS=?SEDIR%\endorsed

rem Set standard CLASSPATH

rem Note that there are no quotes as we do not want to introduce random

rem quotes into the CLASSPATH

if not exist "%JAVA_HOME%\bin\tools.jar" goto noJavac

set CLASSPATH=%JAVA_HOME%\lib\tools.jar

:noJavac

rem Set standard command for invoking Java.

rem Note that NT requires a window name argument when using start.

rem Also note the quoting as JAVA_HOME may contain spaces.

set _RUNJAVA="%JRE_HOME%\bin\java"

set _RUNJAVAW="%JRE_HOME%\bin\javaw"

set _RUNJDB="%JAVA_HOME%\bin\jdb"

set _RUNJAVAC="%JAVA_HOME%\bin\javac"

goto end

:exit

exit /b 1

:end

3、重启tomcat,敲入http://localhost:8080验证,问题解决。

tomcat5需要jdk1.6做支撑,jdk1.5不能够。

时间: 2025-01-28 04:31:28

windows下直接点击startup.bat启动tomcat服务示例代码_DOS/BAT的相关文章

windows下直接点击startup.bat启动tomcat服务

  在XP上明明已经安装了JDK1.5并设置好了JAVA_HOME,可偏偏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;提示找不到java_home各jre_home路径,何解? 原因不知道了,下面来看解决办法

CMD下一个命令遍历目录并删除相同文件的代码_DOS/BAT

如果不小心安装了些制造垃圾的小工具,在系统中各个盘符下都产生了相同的垃圾文件,如我系统中就曾经有被产生了无数的desktop_1.ini 和 desktop_2.ini,当时首先想到的解决办法就是把所有的文件用windows的搜索工具找到,再一并删除,这种方法固然可以解决,但搜索的时候别忘了勾选搜索隐藏文件和隐藏文件夹,不然你是搜索不到恶意制造的垃圾文件的. 这里给出另一种简单办法,只要一个命令,也可达到同样的效果. 它遍历当前盘符并自动删除找到的文件. 命令格式: 复制代码 代码如下: I:\

用bat实现的自动关机的代码_DOS/BAT

一般情况下我们都是使用shutdown来实现关机与重启 用法: shutdown [/i | /l | /s | /r | /a | /p | /h | /e] [/f] [/m \\computer][/t xxx][/d [p:]xx:yy [/c "comment"]] 没有参数 显示帮助.这与键入 /? 是一样的 /? 显示帮助.这与不键入任何选项是一样的 /i 显示图形用户界面(GUI). 这必须是第一个选项 /l 注销.这不能与 /m 或 /d 选项一起使用 /s 关闭计算

批处理BAT实现正弦曲线和抛物线代码_DOS/BAT

先奉上正弦曲线的: @echo off&setlocal enabledelayedexpansion ( :loop for %%i in (30 46 55 59 60 59 55 46 30 14 5 1 0 1 5 14) do ( for /l %%j in (1 1 %%i) do ( set "str=!str! " ) echo !str!#&set str= for /l %%i in (1 1 600) do qdj 2>nul ) goto

BAT加密工具 EncryBat 非编译型bat批处理加密方案与代码_DOS/BAT

bat文件虽然好用,但安全性太脆弱 随便什么人都可以打开查看,甚至修改其中内容 有没有什么办法不把.bat转换成.exe或.com之类,仍是.bat文件 但别人无法查看并修改其中内容??? 有没有什么自我加密之类的呢? 高手给个解决的思路吧 目前讨论的方案如下: 1.在批处理代码插入Unicode特征串的方案 对记事本等使用IsTextUnicode函数识别编码类型的程序有效 对type/edit/EditPlus/UltraEdit等不使用IsTextUnicode函数的程序无效 2.给批处理

windows下配置两个或多个Tomcat启动的方法_Tomcat

确保window的环境变量中找不到CATALINA_HOME和CATALINA_BASE 修改server.xml,用解压版的tomcat,不要用安装版的. 1.修改http访问端口 conf下的server.xml文件的服务访问端口,默认是8080可以改成其它的,如7000 2.修改shutdown端口 默认8005 3.修改jvm启动默认端口,默认端口为8009 <br><Connector port="8009" protocol="AJP/1.3&q

写一个bat批处理文件启动windows进程和延时关闭的代码_DOS/BAT

前些天领导让我们在网站上投票提高他的排名,可是每人投一票才100多票.过了几天领导问我会不会做个刷票程序,提高排名,我说可以试试,研究了一天,终于做出来了,兴奋的我一晚上没睡着.现在拿出来分享一下. 说白了我做的其实就是个批处理文件,批处理扩展名为.bat,其实那个投票页面只是用session去控制是否投票,众所周知,session变量在IE关闭后就会自动消失,重新打开页面时又会创建一个新的连接,这就可以重复投了,这个页面是用的AJAX,我找到ajax所在的JS,把它的真正的投票页面找出来,把I

在DOS方式下对注册表进行操作的代码_DOS/BAT

因为注册表编辑器Regedit.exe其实是一个双栖型的程序,既可在DOS下运行,也可在Windows95/98下运行.许多用户可能已经知道在Windows下使用Regedit的方法,那么,要掌握DOS方式下对注册表的编程,首先要了解在DOS下如何使用注册表编辑器. 在DOS提示符下键入Regedit命令,将出现一个帮助屏幕.此屏幕给出了其命令行参数及其使用方法. 语法: Regedit [/L:system] [/R:user] filename1 Regedit [/L:system] [/

CMD命令行中以管理员权限启动应用程序实现方法_DOS/BAT

很多时候我们需要管理员权限来运行bat那么就需要结合vbscript来实现了 方法一: %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit 常用 @echo off mode con lines=30