修改proto文件编译逻辑

This commit is contained in:
joylink_zhangsai 2023-08-28 15:30:46 +08:00
parent 97958719af
commit eb52a18c3a

View File

@ -2,6 +2,7 @@ package main
import (
"fmt"
"io/fs"
"log"
"os"
"os/exec"
@ -25,23 +26,25 @@ func main() {
}
}
// 获取指定文件夹下的所有proto文件的绝对路径列表
// 获取指定文件夹下的所有proto文件的绝对路径
func getProtoFiles() []string {
var protoFiles []string
files, err := os.ReadDir(protoFolder)
err := filepath.WalkDir(protoFolder, func(path string, d fs.DirEntry, err error) error {
if !d.IsDir() {
protoFiles = append(protoFiles, path)
}
return err
})
if err != nil {
log.Fatal("获取proto文件列表失败")
}
for _, file := range files {
protoFiles = append(protoFiles, file.Name())
log.Fatal("获取proto文件列表失败:", err)
}
return protoFiles
}
// 编译proto文件为Go文件
func compileProto(protoFiles []string) error {
for _, protoFile := range protoFiles {
cmd := exec.Command(protocPath, "--proto_path="+protoFolder, "--go_out=./", protoFile)
for _, fileName := range protoFiles {
cmd := exec.Command(protocPath, "-I="+protoFolder, "--go_out=./", fileName)
fmt.Println(cmd.String())
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr