Tomcat项目本地部署

不依赖idea部署本地项目,这里使用哈米音乐为例。

哈米音乐项目为聚合项目,ham-parent为父模块,其余为子模块。

  • ham-console:后台模块
  • ham-core:公共模块
  • ham-file:图片模块
  • ham-portal:前台模块

需要将这些模块进行打包,点击右侧的Maven Projects

然后如下图步骤点击(其余模块一样)。

在你的target下就会生成一个打好的包

右键点击查看路径,将打包好的这四个包复制到你的tomcat下的webapps下

复制完毕后返回到上一级目录点击conf,修改server.xml

添加如下代码(需要部署几个就加几个,我这里是三个)

注意更改下面这几个部分

java 复制代码
<!-- 每个service的名称要区别开 -->
<Service name="Catalina1">
    <!-- 每个项目的端口号也要进行区分,保证不被占用 -->
    <Connector port="8088" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URLEncoding="UTF-8"/>
    <!-- 这里的AJP端口同样也要进行区分 -->
	<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" secretRequired=""/>
    <Engine name="Catalina1" defaultHost="localhost">
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>
 
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
            <!-- 这里是想要部署的对应项目的名称 -->
		    <Context docBase="ham-file-1.0-SNAPSHOT" path="/" reloadable="true"/>
      </Host>
    </Engine>
  </Service>
<!-- 每个service的名称要区别开 -->
<Service name="Catalina2">
    <!-- 每个项目的端口号也要进行区分,保证不被占用 -->
    <Connector port="8085" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URLEncoding="UTF-8"/>
    <!-- 这里的AJP端口同样也要进行区分 -->
	<Connector port="8011" protocol="AJP/1.3" redirectPort="8443" secretRequired=""/>
    <Engine name="Catalina2" defaultHost="localhost">
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>
 
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
            <!-- 这里是想要部署的对应项目的名称 -->
		    <Context docBase="ham-console-1.0-SNAPSHOT" path="/" reloadable="true"/>
      </Host>
    </Engine>
  </Service>
  <!-- 每个service的名称要区别开 -->
<Service name="Catalina3">
    <!-- 每个项目的端口号也要进行区分,保证不被占用 -->
    <Connector port="8083" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URLEncoding="UTF-8"/>
    <!-- 这里的AJP端口同样也要进行区分 -->
	<Connector port="8012" protocol="AJP/1.3" redirectPort="8443" secretRequired=""/>
    <Engine name="Catalina3" defaultHost="localhost">
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>
 
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
            <!-- 这里是想要部署的对应项目的名称 -->
		    <Context docBase="ham-portal-1.0-SNAPSHOT" path="/" reloadable="true"/>
      </Host>
    </Engine>
  </Service>

修改完毕,点击bin文件找到 startup.bat 双击启动 在网页输入本地端口号就可以直接访问了

相关推荐
Python私教1 分钟前
前端转 AI 全栈:别只做聊天框,SSE 与审批流才是分水岭
前端·人工智能
AAA@峥29 分钟前
Ceph 集群配置管理完整指南
运维·数据库·分布式·ceph
旺仔学长 哈哈32 分钟前
基于SpringBoot的在线招聘测评系统的设计与实现----附源码35253+数据库文档
数据库·spring boot·后端·在线招聘
晓得迷路了1 小时前
栗子前端技术周刊第 139 期 - Nuxt 4.5、Vue 3.6 RC、Angular 发布节奏...
前端·javascript·vue.js
吴声子夜歌1 小时前
MongoDB 4.2——索引(二)
数据库·mongodb·索引
米码收割机1 小时前
【Python】Django恒达科技门户网站(源码+文档)【独一无二】
数据库·python·科技
鱼樱前端1 小时前
AI 会不会取代前端?我看了 2026 年 7 月整个市场,给你一个不吓人的答案
前端·程序员·ai编程
এ慕ོ冬℘゜1 小时前
原生 select 下拉框搜索失效踩坑:文本搜索与 ID 匹配不对应问题排查
前端·javascript·html
艾莉丝努力练剑1 小时前
【MYSQL】MYSQL学习的一大重点:基本查询(下)
android·数据库·学习·mysql·面试·八股文
程序员爱钓鱼1 小时前
Rust Result 详解:可靠的错误处理机制
前端·后端·rust