gf build: 建议允许强制覆盖 internal/packed/build_pack_data.go
Description
在开发时,当要把前端文件打包到gf中时,需要手动执行gf pack resource,manifest internal/packed/build_pack_data.go,因为gf run main.go不会自动完成这一过程。
所以在编译时,会提示path 'internal/packed/build_pack_data.go' is not empty, files might be overwrote, continue? [y/n]:,作为开发者,是了知这些事情的,否则的话开发时打包的资源文件不会生效,所以建议新增配置项以允许在编译时强制覆盖,节省掉向开发者确认的这一过程。
Additional
No response
如果你是使用goland这个IDE,你可以先新建一个Shell Script的Run/Debug Config,调用的shell script内容是
go mod tidy
true>internal/packed/build_pack_data.go
gf pack config,resource internal/packed/build_pack_data.go
然后在你项目运行的Run/Debug Config里设置Before launch选择你之前新建的那个Run/Debug Config就可以了,这样每次运行都会先重新打包你的静态资源
这个地方要把main.go的这一行忽略注释
印象中gf build现在是会清理pack的内容,在本地运行就不使用pack而是实际的文件,这样也方便实时修改。
当然可以给gf pack加一个参数,强制覆盖。
当然也可以写个脚本,里面是rm pack.go,然后再执行gf pack命令。