欢迎光临白事网
详情描述

一、准备工作

1. 检查Java环境

# 检查是否已安装Java
java -version

# 如果未安装,使用Homebrew安装
brew install openjdk

# 或手动下载安装
# 设置JAVA_HOME环境变量
export JAVA_HOME=$(/usr/libexec/java_home)
echo 'export JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.zshrc

2. 获取Tomcat

# 方法1:使用Homebrew安装
brew install tomcat

# 方法2:手动下载(推荐)
# 访问官网:https://tomcat.apache.org/download-10.cgi
# 下载 tar.gz 包(如:apache-tomcat-10.1.24.tar.gz)

# 解压到指定目录
tar -xzf apache-tomcat-10.1.24.tar.gz
sudo mv apache-tomcat-10.1.24 /usr/local/tomcat

二、手动安装Tomcat步骤

1. 解压和配置

# 解压下载的Tomcat
tar -xzf apache-tomcat-*.tar.gz

# 移动到应用程序目录(可选)
sudo mv apache-tomcat-* /usr/local/tomcat

# 设置环境变量
echo 'export CATALINA_HOME=/usr/local/tomcat' >> ~/.zshrc
echo 'export PATH=$CATALINA_HOME/bin:$PATH' >> ~/.zshrc
source ~/.zshrc

2. 配置用户权限

编辑 /usr/local/tomcat/conf/tomcat-users.xml

<tomcat-users>
  <role rolename="manager-gui"/>
  <role rolename="admin-gui"/>
  <user username="admin" password="admin123" roles="manager-gui,admin-gui"/>
</tomcat-users>

3. 启动Tomcat

# 方法1:使用 startup.sh 脚本
cd /usr/local/tomcat/bin
./startup.sh

# 或直接使用
/usr/local/tomcat/bin/startup.sh

4. 验证启动

# 查看日志
tail -f /usr/local/tomcat/logs/catalina.out

# 检查进程
ps aux | grep tomcat

# 测试访问
curl http://localhost:8080

三、使用Homebrew安装(更简单)

1. 安装

brew install tomcat

2. 配置

# 查看安装信息
brew info tomcat

# 编辑配置文件(如果需要修改端口等)
nano /usr/local/opt/tomcat/libexec/conf/server.xml

3. 管理服务

# 启动
brew services start tomcat

# 停止
brew services stop tomcat

# 重启
brew services restart tomcat

# 查看状态
brew services list

四、验证安装成功

浏览器访问

  • 打开浏览器,访问:http://localhost:8080
  • 应该看到Tomcat的欢迎页面

管理页面

  • http://localhost:8080/manager/html - 应用管理
  • http://localhost:8080/host-manager/html - 主机管理

五、常见问题解决

1. 端口冲突

# 修改Tomcat端口
sudo nano /usr/local/tomcat/conf/server.xml

# 修改Connector端口(默认8080)
<Connector port="8080" protocol="HTTP/1.1" ... />

2. 权限问题

# 给脚本执行权限
chmod +x /usr/local/tomcat/bin/*.sh

# 如果使用默认端口(<1024)需要sudo
sudo /usr/local/tomcat/bin/startup.sh

3. JAVA_HOME未设置

# 在catalina.sh中添加
export JAVA_HOME=$(/usr/libexec/java_home)

# 或编辑setenv.sh
echo 'export JAVA_HOME=$(/usr/libexec/java_home)' > /usr/local/tomcat/bin/setenv.sh
chmod +x /usr/local/tomcat/bin/setenv.sh

六、部署Web应用

1. 部署WAR文件

# 将war文件复制到webapps目录
cp your-app.war /usr/local/tomcat/webapps/

# Tomcat会自动解压部署

2. 热部署配置

编辑 conf/server.xml 在 Host 标签中添加:

<Context docBase="/path/to/your/app" path="/yourapp" reloadable="true"/>

七、开机自启动

1. 创建LaunchDaemon

sudo nano /Library/LaunchDaemons/org.apache.tomcat.plist

内容示例:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" 
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>tomcat</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/tomcat/bin/catalina.sh</string>
        <string>run</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>UserName</key>
    <string>your_username</string>
</dict>
</plist>

2. 加载服务

sudo launchctl load /Library/LaunchDaemons/org.apache.tomcat.plist

快速启动脚本

创建一个简单的启动脚本 start-tomcat.sh

#!/bin/bash
export JAVA_HOME=$(/usr/libexec/java_home)
export CATALINA_HOME=/usr/local/tomcat
$CATALINA_HOME/bin/startup.sh
echo "Tomcat started at http://localhost:8080"

推荐方式:对于macOS用户,使用Homebrew安装是最简单的方法,它会自动处理服务和路径配置。

相关帖子
为什么一吃火锅配冰饮就容易拉稀,是肠胃在抗议还是正常反应?
为什么一吃火锅配冰饮就容易拉稀,是肠胃在抗议还是正常反应?
婚纱的储存和运输环节,如何避免在租赁流转过程中产生二次污染?
婚纱的储存和运输环节,如何避免在租赁流转过程中产生二次污染?
劳务派遣员工发生工伤,责任主体和赔付义务应由哪一方承担?
劳务派遣员工发生工伤,责任主体和赔付义务应由哪一方承担?
“多喝水就不会热衰竭”是典型简化说法,水盐同补与渗透压失衡该怎么理解才对?
“多喝水就不会热衰竭”是典型简化说法,水盐同补与渗透压失衡该怎么理解才对?
桥下空间的艺术涂鸦与策展,如何成为展现城市文化性格的流动画廊?
桥下空间的艺术涂鸦与策展,如何成为展现城市文化性格的流动画廊?
舟山市SEO网络推广&品牌网站建设,优秀开发团队
舟山市SEO网络推广&品牌网站建设,优秀开发团队
德宏装修网站建设#企业网站建设公司,专业建站
德宏装修网站建设#企业网站建设公司,专业建站
房地产税试点对房抵贷影响,持有成本增加可能降低评估价
房地产税试点对房抵贷影响,持有成本增加可能降低评估价
无锡市购物网站开发建设&网站建设优化,服务可靠
无锡市购物网站开发建设&网站建设优化,服务可靠
衡水市丧葬服务一条龙|丧葬追思会策划,全城服务
衡水市丧葬服务一条龙|丧葬追思会策划,全城服务
商场人流、停车场车位等公共数据,普通市民可以通过什么App便捷查询?
商场人流、停车场车位等公共数据,普通市民可以通过什么App便捷查询?
丁克家庭的遗产捐赠,如何与兄弟姐妹等亲属的潜在继承期望进行协调?
丁克家庭的遗产捐赠,如何与兄弟姐妹等亲属的潜在继承期望进行协调?
运城市SEO推广&网站优化推广,专业建站
运城市SEO推广&网站优化推广,专业建站
逾期罚息利率陷阱解读,看清合同上浮比例避免债务越滚越多
逾期罚息利率陷阱解读,看清合同上浮比例避免债务越滚越多
申请公租房时,共同居住的家庭成员人数如何影响配租面积标准?
申请公租房时,共同居住的家庭成员人数如何影响配租面积标准?
广州市殡葬服务公司|白事灵棚布置,24小时服务
广州市殡葬服务公司|白事灵棚布置,24小时服务
自贡市殡葬服务-白事服务一条龙,丧葬摄像
自贡市殡葬服务-白事服务一条龙,丧葬摄像
看到气象台发布暴雨蓝色预警,普通人第一时间该做哪些准备?
看到气象台发布暴雨蓝色预警,普通人第一时间该做哪些准备?
宝鸡市SEO网络推广#企业网站定制,企业解决方案
宝鸡市SEO网络推广#企业网站定制,企业解决方案
2026年,人工智能技术如何帮助城市居民更科学地进行家庭种植养护?
2026年,人工智能技术如何帮助城市居民更科学地进行家庭种植养护?
邵阳市软件系统开发&独立网站制作,企业解决方案
邵阳市软件系统开发&独立网站制作,企业解决方案