Tomcat 8(六)catalina.bat详解
来源:互联网 发布:上位机编程视频 编辑:程序博客网 时间:2024/06/10 06:10
catalina.bat的流程图较长,先说下结果
执行startup.bat等同于catalina.bat start,而执行catalina.bat start等同于java Bootstrap start(附带-D、-classpath选项)
Tomcat就是一个java程序
--------------------------------------------------------------------------------------------------------------------------------
catalina.bat中涉及一个新的bat语法:替换变量中的某个字符
获取系统变量:%JAVA_HOME%
获取系统变量%JAVA_HOME%,将%JAVA_HOME%中的a替换成CSDN:%JAVA_HOME:a=CSDN%
创建Test.bat
@echo offecho %JAVA_HOME%echo %JAVA_HOME:a=CSDN%
执行结果:
catalina.bat中的%CATALINA_HOME:;=%,是将%CATALINA_HOME%的;删除
catalina.bat中通过"%CATALINA_HOME%" == "%CATALINA_HOME:;=%",检查CATALINA_HOME中是否包含;
true-不包含;false-包含
-------------------------------------------------------------------------------------------------------------------------------
下面我们来看看catalina.bat(代码就不贴了。。。)
@echo off-从本条命令开始开始,关闭回显
if "%OS%" == "Windows_NT" setlocal-判断是否为Windows系统。是,则执行setlocal
以下这部分代码是删除临时文件(如果存在的话)
if not ""%1"" == ""run"" goto mainEntryif "%TEMP%" == "" goto mainEntryif exist "%TEMP%\%~nx0.run" goto mainEntryecho Y>"%TEMP%\%~nx0.run"if not exist "%TEMP%\%~nx0.run" goto mainEntryecho Y>"%TEMP%\%~nx0.Y"call "%~f0" %* <"%TEMP%\%~nx0.Y"rem Use provided errorlevelset RETVAL=%ERRORLEVEL%del /Q "%TEMP%\%~nx0.Y" >NUL 2>&1exit /B %RETVAL%:mainEntrydel /Q "%TEMP%\%~nx0.run" >NUL 2>&1
catalina.bat的流程图
在catalina.bat的:end下方加入一行代码
echo %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
在cmd下执行startup.bat,执行结果:
红框上方是默认输出;红框内是新添加的输出
将红框内的内容排一下版
start "Tomcat" "C:\Program Files\Java\jdk1.7.0_51\bin\java"-Djava.util.logging.config.file="D:\Program Files\apache-tomcat-8.0.3\conf\logging.properties"-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager-Djava.endorsed.dirs="D:\Program Files\apache-tomcat-8.0.3\endorsed"-classpath "D:\Program Files\apache-tomcat-8.0.3\bin\bootstrap.jar;D:\Program Files\apache-tomcat-8.0.3\bin\tomcat-juli.jar"-Dcatalina.base="D:\Program Files\apache-tomcat-8.0.3"-Dcatalina.home="D:\Program Files\apache-tomcat-8.0.3"-Djava.io.tmpdir="D:\Program Files\apache-tomcat-8.0.3\temp"org.apache.catalina.startup.Bootstrap start
start-打开一个新的cmd窗口
"title"-cmd窗口的标题(执行catalina.bat start时title为Tomcat)
command/program-执行的命令或程序(执行catalina.bat start时,执行的程序是java)
在cmd下输入java,可看到java的可选项-D、-classpath
org.apache.catalina.startup.Bootstrap start-运行Bootstrap,并传递参数start
执行catalina.bat start,是按上图最左边的路线执行的
所以,startup.bat=catalina.bat start=java Bootstrap start(附带-D、-classpath选项)
Tomcat就是一个java程序!
- Tomcat 8(六)catalina.bat详解
- Tomcat Catalina.bat详解
- Tomcat中catalina.bat详解
- Tomcat中catalina.bat详解
- Tomcat中catalina.bat详解
- Tomcat 编码(配置catalina.bat)
- Tomcat Catalina.bat解读
- tomcat catalina.bat解读
- Catalina.bat详解
- tomcat remote debug/catalina.bat
- 分析 Tomcat catalina.bat 脚本
- tomcat catalina.bat 脚本 解释
- 分析 Tomcat catalina.bat 脚本
- 分析 Tomcat catalina.bat 脚本
- 分析 Tomcat catalina.bat 脚本
- Tomcat catalina.bat 原理解析
- Tomcat 8(五)startup.bat详解
- Tomcat 8(五)startup.bat详解
- Xcode中给Objective C下条件断点
- C# DataGridView排序
- 那些年我在通信工程1203的日子 ----致最亲爱的你们
- mongo 启动和关闭
- android应用面试宝典(下);用自定义组件控制循环组件使用bug还添加标志显示答案标志位;通过包名读取配置文件AndroidManifest.xml
- Tomcat 8(六)catalina.bat详解
- 开发技术列表(持续补充中)
- Generate Parentheses
- 8
- 了解Lua语言中的_index,newindex,rawget和rawset
- Android Android.mk
- Ivshmem实现分析与性能测试
- JNI调用c/c++,env->和(*env)->是有区别的
- 输入一个整数,如果该整数介于1到12之间,则输出对应的月份,比如输入为1,则输出”April“;否则输出”not valid month number