[Go] 使用packr包把靜態文件打包進二進制內


當使用golang開發一個網站時 , 一般是需要部署下靜態文件的資源 ,go只是提供接口 , 打包完的go二進制文件不包含靜態文件資源

但是當做一個小型的應用時還要再部署靜態資源顯得比較麻煩 , 這個時候可以使用packr這個包來把靜態資源直接打包進二進制里

 

包的github地址是 https://github.com/gobuffalo/packr

使用的時候可以直接在go.mod里使用v2版本就可以了 

go.mod

github.com/gobuffalo/packr/v2 v2.5.1

 

調用的時候使用import引入

import (
"github.com/gobuffalo/packr/v2"
)

具體方法可以參照我這個 , 也可以去看下文檔

//獲取文件內容,可以打包到二進制
func FileGetContent(file string) string {
str := ""
box := packr.New("tmpl","../static")
content, err := box.FindString(file)
if err != nil {
return str
}
return content
}

重點是在最終打包build的時候 ,先使用packr2 build 以下 , 然后再去go build

packr2命令需要單獨下載

https://github.com/gobuffalo/packr/releases

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM