2 Star 1 Fork 2

go-mao/mao

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
embed.go 2.81 KB
一键复制 编辑 原始数据 按行查看 历史
haitgo 提交于 2022-11-30 15:43 . 优化模型名称
package main
import (
"bytes"
"embed"
"fmt"
"io/ioutil"
"os"
)
//go:embed demo/*
var demoEmbed embed.FS
// 拷贝文件
func copyDir(fromDir string, toDir string) {
files, err := demoEmbed.ReadDir(fromDir)
if err != nil {
fmt.Println("目录"+fromDir+"打开失败:", err.Error())
os.Exit(0)
return
}
if err := os.Mkdir(toDir, 0755); err != nil {
fmt.Println("目录"+toDir+"创建失败", err.Error())
os.Exit(0)
return
}
for _, item := range files {
if item.Name() == "." || item.Name() == ".." {
continue
}
if item.IsDir() {
copyDir(fromDir+"/"+item.Name(), toDir+"/"+item.Name())
} else {
copyFile(fromDir+"/"+item.Name(), toDir+"/"+item.Name())
}
}
}
// 拷贝文件
func copyFile(fromFile string, toFile string) {
data, err := demoEmbed.ReadFile(fromFile)
if err != nil {
fmt.Println("文件"+fromFile+"打开失败:", err.Error())
os.Exit(0)
return
}
//替换通用报名
data = bytes.ReplaceAll(data, []byte("gitee.com/go-mao/mao/demo/app"), []byte(getModName()))
if err := ioutil.WriteFile(toFile, data, 0660); err != nil {
fmt.Println("文件"+toFile+"写入失败:", err.Error())
os.Exit(0)
return
}
}
// 写入模型文件
func writeMod(name string) {
var tpl = `module %s
go 1.19
require github.com/gin-gonic/gin v1.8.1
require (
gitee.com/go-mao/mao v1.0.0 // indirect
github.com/gin-contrib/sse v0.1.0 // indirect
github.com/go-playground/locales v0.14.0 // indirect
github.com/go-playground/universal-translator v0.18.0 // indirect
github.com/go-playground/validator/v10 v10.10.0 // indirect
github.com/go-sql-driver/mysql v1.6.0 // indirect
github.com/goccy/go-json v0.9.7 // indirect
github.com/golang/snappy v0.0.4 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/leodido/go-urn v1.2.1 // indirect
github.com/mattn/go-isatty v0.0.14 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/pelletier/go-toml/v2 v2.0.1 // indirect
github.com/shopspring/decimal v1.3.1 // indirect
github.com/syndtr/goleveldb v1.0.0 // indirect
github.com/ugorji/go/codec v1.2.7 // indirect
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97 // indirect
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 // indirect
golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac // indirect
golang.org/x/text v0.3.6 // indirect
google.golang.org/protobuf v1.28.0 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
xorm.io/builder v0.3.11-0.20220531020008-1bd24a7dc978 // indirect
xorm.io/core v0.7.3 // indirect
xorm.io/xorm v1.3.2 // indirect
)
`
tpl = fmt.Sprintf(tpl, name)
err := ioutil.WriteFile(name+"/go.mod", []byte(tpl), 0766)
if err != nil {
fmt.Println("go.mod创建失败")
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/go-mao/mao.git
git@gitee.com:go-mao/mao.git
go-mao
mao
mao
v1.0.15

搜索帮助