Skip to content

Latest commit

 

History

History
98 lines (79 loc) · 2.22 KB

File metadata and controls

98 lines (79 loc) · 2.22 KB

项目构建说明

当前状态

项目代码已完成,但由于Go环境版本问题(工具链要求1.25.0,系统安装1.23.12),暂时无法构建。

已完成的功能

1. 项目结构

procman/
├── cmd/procman/main.go    # CLI入口点
├── pkg/config/config.go   # 配置管理
├── pkg/daemon/daemon.go   # 守护进程管理
├── pkg/server/server.go   # HTTP服务器(使用标准库net/http)
├── go.mod                 # Go模块定义
├── README.md             # 项目文档
├── build.sh              # 构建脚本
└── test.sh               # 测试脚本

2. 核心功能

  • ✅ CLI命令:start, stop, status, run
  • ✅ 守护进程支持(Linux & Windows)
  • ✅ HTTP服务器(Hello World)
  • ✅ 配置文件支持
  • ✅ PID文件管理
  • ✅ 日志重定向

3. 使用方法

# 启动守护进程
./procman start

# 指定端口启动
./procman -port 3000 start

# 查看状态
./procman status

# 停止服务
./procman stop

# 前台运行(调试)
./procman run

解决Go版本问题

方法1:升级Go版本

# 下载并安装Go 1.23.12或更高版本
# 从 https://golang.org/dl/ 下载

方法2:使用Go版本管理器

# 使用gvm管理Go版本
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
source ~/.gvm/scripts/gvm
gvm install go1.23.12
gvm use go1.23.12

方法3:设置环境变量

export GOTOOLCHAIN=go1.23.12
go build -o procman ./cmd/procman

方法4:使用proxychains(如果有网络问题)

# 配置proxychains
proxychains go build -o procman ./cmd/procman

测试

在正确的Go环境中,运行:

chmod +x test.sh
./test.sh

跨平台构建

# Linux
GOOS=linux GOARCH=amd64 go build -o procman-linux ./cmd/procman

# Windows
GOOS=windows GOARCH=amd64 go build -o procman.exe ./cmd/procman

# macOS
GOOS=darwin GOARCH=amd64 go build -o procman-macos ./cmd/procman

注意事项

  1. 代码已从fasthttp改为标准库net/http,避免依赖问题
  2. 守护进程实现支持Linux和Windows
  3. 所有配置项都支持命令行、环境变量和配置文件三种方式