# JavaBridge Supervisor 启动脚本 **Repository Path**: web/javabridgesh ## Basic Information - **Project Name**: JavaBridge Supervisor 启动脚本 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-16 - **Last Updated**: 2025-10-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JavaBridge 启动脚本集合 本目录包含多个JavaBridge启动脚本,适用于不同的使用场景。 ## 脚本文件对比 | 脚本文件 | 用途 | 运行方式 | 特点 | |---------|------|----------|------| | `start_javabridge.sh` | Supervisor专用 | 前台运行 | 简化配置,适合Supervisor进程管理 | | `javabridge.sh` | 功能完整版 | 后台运行 | 支持完整生命周期管理 | | `java_start.sh` | 基础启动 | 后台运行 | 简单易用,适合手动启动 | ## 详细说明 ### 1. start_javabridge.sh - Supervisor专用脚本 专为宝塔面板Supervisor优化的启动脚本,使用前台运行模式。 **特点:** - 前台运行(使用exec命令) - 简化配置,只保留核心功能 - 自动创建日志目录 - 可选端口清理功能 **使用方式:** ```bash ./start_javabridge.sh ``` **配置参数:** ```bash BRIDGE_DIR="/www/wwwroot/JavaBridge/WEB-INF/lib" JAR_PATH="$BRIDGE_DIR/JavaBridge.jar" JAVA_OPTS="-Xms512m -Xmx1024m -XX:+UseG1GC -Dfile.encoding=UTF-8" PORT=8080 JAVA_CMD="/www/server/java/jdk1.8.0_371/bin/java" ``` ### 2. javabridge.sh - 功能完整版脚本 完整的JavaBridge管理脚本,支持完整的生命周期管理。 **特点:** - 智能Java路径检测(手动设置优先,自动检测降级) - 健壮的进程管理(端口和进程名双重检查) - 完整的命令支持(start/stop/restart/status) - 详细的错误诊断信息 **命令列表:** ```bash ./javabridge.sh start # 启动服务 ./javabridge.sh stop # 停止服务 ./javabridge.sh restart # 重启服务 ./javabridge.sh status # 查看状态 ``` **配置参数:** ```bash BRIDGE_DIR="/www/wwwroot/JavaBridge/WEB-INF/lib" JAR_PATH="$BRIDGE_DIR/JavaBridge.jar" JAVA_OPTS="-Xms512m -Xmx1024m -XX:+UseG1GC -Dfile.encoding=UTF-8" PORT=8080 JAVA_CMD="/www/server/java/jdk1.8.0_371/bin/java" # 可选,会自动检测 ``` ### 3. java_start.sh - 基础启动脚本 简单的JavaBridge启动脚本,适合手动启动场景。 **特点:** - 使用PID文件管理进程 - 自动备份旧日志文件 - 启动验证和状态检查 - 配置简单,易于理解 **使用方式:** ```bash ./java_start.sh ``` **配置参数:** ```bash BRIDGE_DIR="/www/wwwroot/JavaBridge/WEB-INF/lib" JAVA_OPTS="-Xms512m -Xmx1024m -XX:+UseG1GC -Dfile.encoding=UTF-8" BRIDGE_OPTS="SERVLET:8080 3 JavaBridge.log" ``` ## 使用场景推荐 ### 宝塔Supervisor环境 **推荐使用:** `start_javabridge.sh` - 前台运行模式,符合Supervisor要求 - 简化配置,减少出错可能 - 自动处理端口占用 ### 手动管理环境 **推荐使用:** `javabridge.sh` - 完整的生命周期管理 - 详细的错误诊断信息 - 支持多种操作命令 ### 简单启动场景 **推荐使用:** `java_start.sh` - 配置简单,易于理解 - 使用PID文件管理进程 - 自动日志备份 ## 快速开始 ### 1. 设置执行权限 ```bash chmod +x *.sh ``` ### 2. 修改配置(根据实际环境) 编辑脚本中的配置参数: - `BRIDGE_DIR`: JavaBridge安装目录 - `JAVA_CMD`: Java可执行文件路径(根据实际安装路径修改) - `PORT`: 服务监听端口 ### 3. 启动服务 根据使用场景选择合适的脚本: **Supervisor环境:** ```bash ./start_javabridge.sh ``` **手动管理:** ```bash ./javabridge.sh start ``` **简单启动:** ```bash ./java_start.sh ``` ## 配置说明 ### 公共配置参数 所有脚本都使用以下基础配置: ```bash BRIDGE_DIR="/www/wwwroot/JavaBridge/WEB-INF/lib" # JavaBridge安装目录 PORT=8080 # 服务监听端口 ``` ### Java路径配置 ```bash # 宝塔环境专用路径(根据实际安装路径修改) JAVA_CMD="/www/server/java/jdk1.8.0_371/bin/java" ``` ### JVM参数配置 ```bash JAVA_OPTS="-Xms512m -Xmx1024m -XX:+UseG1GC -Dfile.encoding=UTF-8" ``` ## 故障排除 ### 常见问题 1. **Java路径错误** ```bash 错误: Java路径不可用: /path/to/java ``` **解决方案:** 检查并修改`JAVA_CMD`配置 2. **JAR文件不存在** ```bash 错误: JAR文件不存在: /path/to/JavaBridge.jar ``` **解决方案:** 检查并修改`BRIDGE_DIR`和`JAR_PATH`配置 3. **端口占用** ```bash 发现端口 8080 被进程 XXXX 占用 ``` **解决方案:** 修改`PORT`配置或停止占用端口的服务 4. **权限问题** ```bash -bash: ./script.sh: Permission denied ``` **解决方案:** ```bash chmod +x script.sh ``` ### 日志查看 ```bash # 查看实时日志 tail -f /www/wwwroot/JavaBridge/WEB-INF/lib/logs_backup/JavaBridge_$(date +%Y%m%d).log # 查看启动日志(java_start.sh) tail -f startup.log ``` ## 注意事项 1. **Supervisor要求**:使用Supervisor时必须使用前台运行模式(start_javabridge.sh) 2. **Java版本**:需要Java 8或更高版本 3. **路径配置**:确保所有路径配置正确无误 4. **端口冲突**:避免端口被其他服务占用 ## 技术支持 如遇问题,请检查: - 脚本执行权限 - Java安装和配置 - 文件路径正确性 - 端口占用情况 查看对应日志文件获取详细错误信息。