在windows里使用tomcat有多种不同的方式,这里用的是压缩包的tomcat。
软件部署
独立程序启动
网上教程比较多,比较直观
1.在环境变量中设置JAVA_HOME或者JRE_HOME。必须设置其中之一。
2.在环境变量中设置CATALINA_HOME。可以不设置。
3.在bin目录中,点击startup.bat,可以弹出窗口运行。
服务启动
创建服务可以使用压缩包中service.bat创建服务。
目录结构
1.修改service.bat中的内容,这里用相对路径设置自定义JRE(或JDK),这里截取service.bat中被修改的部分,这里设置了我们自己的jre。这里也可以设置JAVA_HOME。
rem Make sure prerequisite environment variables are set if not "%JAVA_HOME%" == "" goto gotJdkHome if not "%JRE_HOME%" == "" goto gotJreHome rem if there is no jre or jdk found, set ours. set "JRE_HOME=%cd%\jre1.8.0_65" if exist "%JRE_HOME%\bin\java.exe" goto gotJreHome echo Neither the JAVA_HOME nor the JRE_HOME environment variable is defined echo Service will try to guess them from the registry. goto okJavaHome
2.设置此服务为自动启动。将下面代码中的Startup设置成auto,更多的参数可以到 这里 查看。
"%EXECUTABLE%" //IS//%SERVICE_NAME% ^ --Description "Apache Tomcat 8.0.39 Server - http://tomcat.apache.org/" ^ --DisplayName "%DISPLAYNAME%" ^ --Install "%EXECUTABLE%" ^ --Startup auto ^ --LogPath "%CATALINA_BASE%\logs" ^ --StdOutput auto ^ --StdError auto ^ --Classpath "%CLASSPATH%" ^ --Jvm "%JVM%" ^ --StartMode jvm ^ --StopMode jvm ^ --StartPath "%CATALINA_HOME%" ^ --StopPath "%CATALINA_HOME%" ^ --StartClass org.apache.catalina.startup.Bootstrap ^ --StopClass org.apache.catalina.startup.Bootstrap ^ --StartParams start ^ --StopParams stop ^ --JvmOptions "-Dcatalina.home=%CATALINA_HOME%;-Dcatalina.base=%CATALINA_BASE%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed;-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
3.在命令行中运行service.bat install 服务名,例如:
service.bat install hcm
4.重启操作系统或去服务中启动一下服务
tomcat管理权限
在tomcat/conf/tomcat-users.xml中设置登录tomcat管理平台的权限,这里使用了从界面中操作的权限,更多参数请去 这里 查看
<role rolename="manager-gui"/> <user username="admin" password="admin" roles="admin-gui,manager-gui"/>
热加载
tomcat也支持热加载的功能,需要在tomcat/conf/server.xml或其他的配置文件中配置,这里在server.xml中配置了热加载参数,更多的参数可以去 这里 查看。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="/hcs" docBase="hcs" reloadable="true" crossContext="true"> </Context> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host>
热加载主要使用<Context ></Context>来配置,必须配置的参数有docBase、reloadable,这里使用的是将应用部署到tomcat/webapps下面,所以参数可以使用相对路径,docBase在标签的appBase路径的下面。有其他的配置方式,在上面的连接中有介绍。
时间: 2024-10-13 23:03:18