Commit 0e0ac4bb authored by xiezhi's avatar xiezhi

fix makefile

parent 80e4a969
...@@ -48,11 +48,7 @@ run: install ...@@ -48,11 +48,7 @@ run: install
# 停止命令 # 停止命令
.PHONY: stop .PHONY: stop
stop: kill stop:
# 强制杀死所有相关仓颉进程
.PHONY: kill
kill:
@echo "正在查找并杀死所有相关的仓颉进程..." @echo "正在查找并杀死所有相关的仓颉进程..."
@if [ -f "$(PID_FILE)" ]; then \ @if [ -f "$(PID_FILE)" ]; then \
MAIN_PID=$$(cat $(PID_FILE)); \ MAIN_PID=$$(cat $(PID_FILE)); \
...@@ -73,62 +69,4 @@ kill: ...@@ -73,62 +69,4 @@ kill:
echo "未找到相关的仓颉进程"; \ echo "未找到相关的仓颉进程"; \
fi fi
@rm -f $(PID_FILE) @rm -f $(PID_FILE)
@echo "✅ 强制停止操作完成" @echo "✅ 停止操作完成"
# 重启命令
.PHONY: restart
restart: stop run
# 查看状态
.PHONY: status
status:
@RUNNING_PIDS=$$(ps aux | grep -E "cjpm.*run|cangjie.*helloworld" | grep -v grep | awk '{print $$2}'); \
if [ -n "$$RUNNING_PIDS" ]; then \
echo "✅ 服务器正在运行"; \
echo "相关进程PID: $$RUNNING_PIDS"; \
echo "端口: $(APP_PORT)"; \
echo "日志: $(LOG_FILE)"; \
if [ -f "$(PID_FILE)" ]; then \
MAIN_PID=$$(cat $(PID_FILE)); \
echo "主进程PID: $$MAIN_PID"; \
fi; \
else \
echo "❌ 服务器未运行"; \
if [ -f "$(PID_FILE)" ]; then \
echo "清理过期的PID文件..."; \
rm -f $(PID_FILE); \
fi; \
fi
# 清理编译文件
.PHONY: clean
clean:
@echo "清理编译文件..."
rm -rf $(BUILD_DIR)
@echo "清理完成!"
# 显示帮助信息
.PHONY: help
help:
@echo "仓颉 1.0.1 HTTP 服务器项目"
@echo ""
@echo "可用命令:"
@echo " make install - 安装依赖并编译项目"
@echo " make run - 启动HTTP服务器(后台运行)"
@echo " make stop - 停止HTTP服务器(优雅停止)"
@echo " make kill - 强制杀死所有相关仓颉进程"
@echo " make restart - 重启HTTP服务器"
@echo " make status - 查看服务器状态"
@echo " make clean - 清理编译文件"
@echo " make help - 显示此帮助信息"
@echo ""
@echo "示例:"
@echo " make run # 启动服务器"
@echo " make status # 查看状态"
@echo " make stop # 优雅停止服务器"
@echo " make kill # 强制停止所有相关进程"
@echo " make restart # 重启服务器"
@echo ""
@echo "环境变量:"
@echo " APP_PORT_1 - 服务器端口(默认: 8000)"
...@@ -54,23 +54,8 @@ make install ...@@ -54,23 +54,8 @@ make install
# 启动 HTTP 服务器(后台运行) # 启动 HTTP 服务器(后台运行)
make run make run
# 查看服务器状态
make status
# 停止服务器 # 停止服务器
make stop make stop
# 强制停止所有相关进程
make kill
# 重启服务器
make restart
# 清理编译文件
make clean
# 查看帮助
make help
``` ```
### 方法三:使用 Docker ### 方法三:使用 Docker
...@@ -102,21 +87,12 @@ curl http://localhost:8000/ ...@@ -102,21 +87,12 @@ curl http://localhost:8000/
# 输出:Hello Cangjie! # 输出:Hello Cangjie!
``` ```
### 查看服务器状态
```bash
make status
# 输出:
# ✅ 服务器正在运行,PID: 12345
# 端口: 8000
# 日志: /path/to/.logs/app.log
```
### 停止服务器 ### 停止服务器
```bash ```bash
make stop make stop
# 输出: # 输出:
# ✅ 进程 12345 已被强制停止 # ✅ 所有相关仓颉进程已被强制停止
# ✅ 服务器停止操作完成 # ✅ 停止操作完成
``` ```
## 代码说明 ## 代码说明
...@@ -132,16 +108,11 @@ HTTP 服务器类包含以下功能: ...@@ -132,16 +108,11 @@ HTTP 服务器类包含以下功能:
### Makefile ### Makefile
提供了以下命令: 提供了以下核心命令:
- `install`: 检查仓颉版本并编译源代码 - `install`: 检查仓颉版本并编译源代码
- `run`: 启动 HTTP 服务器(后台运行) - `run`: 启动 HTTP 服务器(后台运行)
- `stop`: 停止 HTTP 服务器(直接调用 kill) - `stop`: 停止 HTTP 服务器(强制停止所有相关进程)
- `kill`: 强制停止所有相关仓颉进程
- `restart`: 重启 HTTP 服务器
- `status`: 查看服务器运行状态
- `clean`: 清理编译生成的文件
- `help`: 显示帮助信息
### cjpm.toml ### cjpm.toml
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment