Tomcat--startup.bat文件



如何启动tomcat,如何关闭tomcat等常规操作,我们应该都很清楚了,但是实际中我们经常会遇到一些恶心的情景,比如说正在我们撸码撸的很高兴的时候,eclipse挂掉了,这个时候重启IDE之后,启动tomcat就会发现说8080已经被占用了,如果我们在资源管理器里面去管进程的话会把java的进程也关掉,那么怎么办呢?很简单就是打开我的电脑,找到tomcat所在目录,然后点击shutdown.bat就OK了。但是这样子的操作还要找下目录,太麻烦了,我想直接一步输入指令就可以控制tomcat的启动和关闭,怎么办呢?然后我不希望启动和关闭tomcat都会出现那个java的那个CMD窗口,直接放在我输入指令的那一个里面就好了,怎么办呢?



解决上面的这些问题,就必须要了解下startup.bat文件,这也正是我写这篇博客的原因。

startup.bat,shutdown.bat,startup.sh,shutdown.sh这4个文件我们经常用到,bat结尾的就是在Windows操作环境下执行的批处理文件,sh结尾的就是在linux环境下执行的批处理文件。



前面的博客里面我们也已经说明白了,要想运行tomcat就必须要配置JAVA_HOME,为什么呢?我们用editplus打开startup.bat文件来看一下。



下面是一篇原来的startup.bat源码,然后我自己加上了注释,只需要了解下就好了,不用管他具体的怎么写的。

set "CURRENT_DIR=%cd%"
//如果CATALINA_HOME不为空就跳转到gotHome指令,并且把CATALINA_HOME所在的路径设置成为当前的路径。
if not "%gotHome%" == "" goto gotHome
set "CATALINA_HOME=%CURRENT_DIR%"
//如果存在CATALINA_HOME%\bin\catalina.bat就跳转到okHome指令上
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome
cd ..
set "CATALINA_HOME=%cd%"
cd "%CURRENT_DIR%" :gotHome
//如果存在CATALINA_HOME%\bin\catalina.bat就跳转到okHome指令上
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome
echo The CATALINA_HOME environment variable is not defined correctly
echo This environment variable is needed to run this program
goto end :okHome
//跳转到catalina.bat指令上
set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"

OK,现在就清楚了,我们在点击startup.bat文件的时候,实际上操作的是catalina.bat文件。现在我们回到我刚才提出的那几个问题。

现在我们不用IDE想要启动和关闭tomcat,直接找到目录鼠标点点就OK,或者使用CMD指令到tomcat的bin目录下执行也可以,如下图:





但是上面有一个问题就是还要复制tomcat的路径到CMD窗口里面,太折腾了,我想直接在CMD任意的窗口下就可以使用startup.bat,这里就要配置path,将tomcat的路径带上bin目录在添加在path中,然后运行startup指令,但是CMD窗口里面报错,如下图:





上面显示的这2行代码可以在前面的startup文件里面看到,就是echo后面那2句话,上面的信息已经说的很清楚了,就是说直接在任意的目录下运行startup指令如要配置“CATALINA_HOME”,也就是tomcat的路径,OK,那我们来配置下:



右键我的电脑,高级系统设置,高级,环境变量,新增CATALINA_HOME,指向tomcat的目录,注意不带bin,就和配置JAVA_HOME一样。





OK,现在搞定了,直接可以用startup指令了,我们前面已经知道了其实这个指令运行的就是catalina指令,我们直接敲上这个指令页面如下:







OK,最后一步了,我们不想让启动和停止tomcat都在开一个窗口的话,我们就用Catalina run,Catalina stop就OK了。



Tomcat--startup.bat文件的更多相关文章

  1. 关于tomcat startup.bat启动后一闪而过的问题(转)

    1.如果双击startup.bat,窗口一闪而过,可以在命令行里面启动startup.bat:  2.如果命令行里面启动startup.bat情况还是这样,就可以在bat命令后面加上pause.这样就 ...

  2. 制作tomcat重启.bat文件

    环境是在windows下,linux不知道,没有尝试过,有机会去试试哈哈 首先创建一个restart.bat文件 创建在哪里看你开心咯 然后用记事本打开 输入以下源代码: @echo off cd / ...

  3. 更改Tomcat startup.bat启动窗口名称

    通常在Tomcat bin目录下用startup.bat启动Tomcat ,启动窗口显示的Title是Tomcat 如果遇到一个服务器上多个Tomcat的话就会容易混淆.更改方法如下: 1 在bin目 ...

  4. exception tomcat startup.bat 闪退

    解决方案: startup.bat,右击->编辑,在文件头加入下面两行: SET JAVA_HOME=D:\Java\jdk1.7 (java jdk目录) SET TOMCAT_HOME=E: ...

  5. tomcat安装启动startup.bat文件命令行界面出现乱码的问题解决

    进入tomcat安装界面,进入conf文件夹,找打logging.properties,打开进行编辑,在最后添加一句 java.util.logging.ConsoleHandler.encoding ...

  6. Tomcat startup.bat启动隐藏弹出的信息窗口

    to make tomcat to use javaw.exe instead of java.exe using some startup parameter or environment vari ...

  7. 最实用解决tomcat startup.bat 一闪而过

    1.直接到tomcat 的解压路径中找到log日志,eg:D:\tomcat\apache-tomcat-7.0.73\logs 查看 catalina 这个日志文件,可以清除的定位错误原因:一般可能 ...

  8. tomcat startup.bat 启动中文显示乱码

    打开tomcat文件夹到conf目录下 修改logging.properties 找到 java.util.logging.ConsoleHandler.encoding = utf-8这行 更改为 ...

  9. windows下修改tomcat的startup.bat脚本文件后台运行

    1.修改startup.bat文件 rem Get remaining unshifted command line arguments and save them in the set CMD_LI ...

  10. 启动tomcat的 startup.bat屏幕一闪而过

    有时启动tomcat 时,屏幕一闪而过,看不到是那里有问题.要想让屏幕停下来,做法如下: 1.打开 startup.bat 文件,在文件最后加上最后加一行@pause 2.重新运行 startup.b ...

随机推荐

  1. 自学Aruba1.2-WLAN一些基本常识

    点击返回:自学Aruba之路 自学Aruba1.2-WLAN一些基本常识 1. LAN.WAN.WLAN.WIFI术语 1.1 局域网(Local Area Network,LAN) 是指在某一区域内 ...

  2. python_IO编程

    本篇文章将介绍python里面的I/O编程.更多内容请参考:python学习指南 I/O编程 读写文件时最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们必须了解 ...

  3. Running Solr in Docker

    Docker现在越来越火,所有的应用程序都想Docker一下,但是并没有听说在Docker上运行Solr.在没有Docker之前要想使用Solr需要在宿主机安装JDK,安装Tomcat,下载Solr程 ...

  4. JMeter-接口自动化之正则表达式关联

    jmeter中,接口自动化的关键在于参数关联.比如需要登录的接口,如何调用登录口令?一个增删改查的闭环,如何将接口参数上下传递?下面就以实际的例子来仔细说一说 1:登录接口 这里有一个实际的登录接口, ...

  5. Java之CountDownLatch ---控制线程执行顺序

    一,类介绍 这是java.util.concurrent包里的一个同步辅助类,它有两个主要的常用方法  countDown()方法以及await()方法.在完成一组正在其他线程中执行的操作之前,它允许 ...

  6. Activiti 5.22.0 之自由驳回任务实现(亲测)

    ​ 上篇博文,我们完成一个任务SKIP的实现,说好要给各位看官带来驳回实现的现在,就奉上具体实现和讲解.(其实我感觉我的注释写的已经非常清楚了,哈哈) ​ 依旧是,先说我们的需求和思路. PS: ​ ...

  7. Vijos P1785 同学排序【模拟】

    同学排序 描述 现有m位同学,第1位同学为1号,第2位同学为2号,依次第m位同学为m号.要求双号的学生站出来,然后余下的重新组合,组合完后,再次让双号的学生站出来,重复n次,问这时有多少同学出来站着? ...

  8. 浅尝辄止WPF自定义用户控件(实现颜色调制器)

    主要利用用户控件实现一个自定义的颜色调制控件,实现一个小小的功能,具体实现界面如下. 首先自己新建一个wpf的用户控件类,我就放在我的wpf项目的一个文件夹下面,因为是一个很小的东西,所以就没有用mv ...

  9. Vue中的$set的使用

    在我们使用vue进行开发的过程中,可能会遇到一种情况:当生成vue实例后,当再次给数据赋值时,有时候并不会自动更新到视图上去: 当我们去看vue文档的时候,会发现有这么一句话:如果在实例创建之后添加新 ...

  10. virtualbox虚拟机NAT模式下不能连接外网

    背景 给VirtualBox虚拟机(装载了Ubuntu16.04系统)配置了两张网卡,网络模式分别为"网络地址转换(NAT)"和"仅主机(Host-Only)适配器&qu ...