设为首页 收藏本站
查看: 1080|回复: 0

[经验分享] Tomcat的bin目录下startup.bat、Tomcat6.exe、Tomcat6w.exe区别

[复制链接]

尚未签到

发表于 2015-8-8 10:38:05 | 显示全部楼层 |阅读模式
  从官方下载了apache-tomcat-6.0.37-windows-x64.zip安装包,解压后bin目录下的startup.bat、Tomcat6.exe、Tomcat6w.exe 3个程序有何区别不是很了解。
  
  一、tomcat6.exe与startup.bat的区别:
  1、这两个都可以启动tomcat,但tomcat6.exe必须安装了服务才能启动,而startup.bat不需要
  2、另外一个区别是它们启动所使用的JAVA环境配置是分开的
  tomcat6.exe启动所使用JAVA配置与服务启动所使用的JAVA配置一样,都是通过tomcat6w.exe的JAVA面板配置(可以在创建服务前修改service.bat文件的JAVA_HOME变量来指定初始的JVM,
  该JAVA面板的所有配置项都是从service.bat文件初始化的。)


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



  二、Tomcat6解压版的配置
  情况:Tomcat解压后,启动bin目录的startup.bat正常,但是启动tomcat7.exe却启动不了,为什么?
  1、设置环境变量
      下载完成后,解压到D:\Tomcat6(设置你的路径),检查环境变量JAVA_HOME是否存在:一般JDK安装时会自动设置,如果没有就创建,JAVA_HOME的值设为JDK的安装根路径.
  2、设置tomcat为服务
        服务设置方法,也即是解决上面出现的情况,编辑service.bat文件



rem Guess CATALINA_HOME if not defined
set CURRENT_DIR=%cd%
添加下面一句指定tomcat的安装目录。
set CATALINA_HOME=D:\apache-tomcat-7.0.29
if not "%CATALINA_HOME%" == "" goto gotHome
set CATALINA_HOME=%cd%
为了在“进程”中跟其他安装的tomcat区分名字,修改tomcat7.exe 的文件名。这里我仍然使用tomcat7.exe。
if exist "%CATALINA_HOME%\bin\tomcat7.exe" goto okHome
rem CD to the upper dir
cd ..
set CATALINA_HOME=%cd%
:gotHome
if exist "%CATALINA_HOME%\bin\tomcat6018.exe" goto okHome
echo The tomcat.exe was not found...
echo The CATALINA_HOME environment variable is not defined correctly.
echo This environment variable is needed to run this program
goto end
rem Make sure prerequisite environment variables are set
if not "%JAVA_HOME%" == "" goto okHome
echo The JAVA_HOME environment variable is not defined
echo This environment variable is needed to run this program
goto end
:okHome
if not "%CATALINA_BASE%" == "" goto gotBase
set CATALINA_BASE=%CATALINA_HOME%
:gotBase
set EXECUTABLE=%CATALINA_HOME%\bin\tomcat6018.exe
rem Set default Service name
创建服务后的服务名称,这个名称必须唯一(解压目录里的tomcat7.exe,tomcat7w.exe的名字与此处对应)
set SERVICE_NAME=Tomcat7
创建服务后的服务显示名称,这个名称可以与其他服务显示名称相同。
set PR_DISPLAYNAME=Apache Tomcat 7
............ (中间省略)
"%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
如果你需要把服务设置为开机自启动,可以加下面这句
sc config %SERVICE_NAME% start= auto
echo The service '%SERVICE_NAME%' has been installed.
:end
cd %CURRENT_DIR%

运行命令行cmd,可以只用services.msc命令查看当前的服务会发现还没有Apache Tomcat 7,

进入tomcat 的bin目录,执行service.bat install 安装服务

然后再使用services.msc查看服务就多了Apache Tomcat 7

这样问题就解决了!



DSC0000.png





DSC0001.png





三、tomcat6.exe与tomcat6w.exe的区别:



  把tomcat6.exe安装成服务后,双击 tomcat6w.exe,弹出可视化tomcat服务控制台,进而可以轻松控制tomcat服务。



DSC0002.png







  如果未安装tomcat为服务的话,双击tomcat6w.exe 弹出个错误对话框,说“指定的服务并未以安装的服务存在。Unable to open the service tomcat6”,如下图:
  
DSC0003.jpg
  
  原因其实是这两个文件要起作用,必须先为这个tomcat安装服务。
  注:tomcat6.exe 这个文件是用来启动tomcat的,tomcat6w.exe是管理tomcat服务的。
  具体安装方法:打开命令行提示符窗口
  => 进入Tomcat安装目录==> 进入bin目录下==> 输入:service.bat install  即可
  直接到目录点击这个bat会不会也可以运行?经过验证:不可以
  
  如想移除tomcat服务,操作如下:
  具体安装方法:打开命令行提示符窗口
  => 进入Tomcat安装目录==> 进入bin目录下==> 输入:service.bat remove tomcat服务名称(如tomcat6) 即可。
  
  本文参考了:
  http://blog.iyunv.com/kai_wei_zhang/article/details/7909907
  http://woshiyu4039.iteye.com/blog/814635

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-95440-1-1.html 上篇帖子: How Tomcat Works(十二) 下篇帖子: Intellij IDEA整合Tomcat手册
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表