Tomcat的bin目录下的startup.bat和Tomcat7.exe的区别

来源:互联网 发布:淘宝生意参谋选词助手 编辑:程序博客网 时间:2024/06/13 02:37

情况:Tomcat解压后,启动bin目录的startup.bat正常,但是启动tomcat7.exe却启动不了,为什么?

一、tomcat7.exe与startup.bat的区别:

1、这两个都可以启动tomcat,但tomcat7.exe必须安装了服务才能启动,而startup.bat不需要

2、另外一个区别是它们启动所使用的JAVA环境配置是分开的

tomcat7.exe启动所使用JAVA配置与服务启动所使用的JAVA配置一样,都是通过tomcat7w.exe的JAVA面板配置(可以在创建服务前修改service.bat文件的JAVA_HOME变量来指定初始的JVM,该JAVA面板的所有配置项都是从service.bat文件初始化的。)

startup.bat启动所使用的JAVA配置可以通过修改catalina.bat 与setclasspath.bat 文件里的JAVA_HOME与JRE_HOME变量来指定,也可以直接在电脑的高级属性里面添加

二、Tomcat6解压版的配置

下载完成后,解压到D:\Tomcat7(设置你的路径),检查环境变量JAVA_HOME是否存在:一般JDK安装时会自动设置,如果没有就创建,JAVA_HOME的值设为JDK的安装根路径

1、设置环境变量

2、设置服务

服务设置方法,也即是解决上面出现的情况,编辑service.bat文件

[java] view plaincopy
  1. rem Guess CATALINA_HOME if not defined  
  2. set CURRENT_DIR=%cd%  
  3.   
  4. 添加下面一句指定tomcat的安装目录。  
  5. set CATALINA_HOME=D:\apache-tomcat-7.0.29  
  6. if not "%CATALINA_HOME%" == "" goto gotHome  
  7. set CATALINA_HOME=%cd%  
  8.   
  9. 为了在“进程”中跟其他安装的tomcat区分名字,修改tomcat7.exe 的文件名。这里我仍然使用tomcat7.exe。  
  10.   
  11. if exist "%CATALINA_HOME%\bin\tomcat7.exe" goto okHome  
  12. rem CD to the upper dir  
  13. cd ..  
  14. set CATALINA_HOME=%cd%  
  15. :gotHome  
  16. if exist "%CATALINA_HOME%\bin\tomcat6018.exe" goto okHome  
  17. echo The tomcat.exe was not found...  
  18. echo The CATALINA_HOME environment variable is not defined correctly.  
  19. echo This environment variable is needed to run this program  
  20. goto end  
  21. rem Make sure prerequisite environment variables are set  
  22. if not "%JAVA_HOME%" == "" goto okHome  
  23. echo The JAVA_HOME environment variable is not defined  
  24. echo This environment variable is needed to run this program  
  25. goto end   
  26. :okHome  
  27. if not "%CATALINA_BASE%" == "" goto gotBase  
  28. set CATALINA_BASE=%CATALINA_HOME%  
  29. :gotBase  
  30.    
  31. set EXECUTABLE=%CATALINA_HOME%\bin\tomcat6018.exe  
  32.   
  33. rem Set default Service name  
  34.   
  35. 创建服务后的服务名称,这个名称必须唯一(解压目录里的tomcat7.exe,tomcat7w.exe的名字与此处对应)  
  36. set SERVICE_NAME=Tomcat7  
  37.   
  38. 创建服务后的服务显示名称,这个名称可以与其他服务显示名称相同。  
  39. set PR_DISPLAYNAME=Apache Tomcat 7  
  40.   
  41. ............ (中间省略)  
  42.   
  43. "%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties" --JvmMs 128 --JvmMx 256  
  44.   
  45. 如果你需要把服务设置为开机自启动,可以加下面这句  
  46. sc config %SERVICE_NAME% start= auto  
  47. echo The service '%SERVICE_NAME%' has been installed.  
  48.   
  49. :end  
  50. cd %CURRENT_DIR%  

运行命令行cmd,可以只用services.msc命令查看当前的服务会发现还没有Apache Tomcat 7,
进入tomcat 的bin目录,执行service.bat install 安装服务
然后再使用services.msc查看服务就多了Apache Tomcat 7
这样问题就解决了!
0 0
原创粉丝点击