Go官方在1.16版本發(fā)布了官方內(nèi)嵌資源到二進(jìn)制的功能,使得部署更加簡單
在開發(fā)web的時候往往會有一些web文件,而部署的時候需要部署一個二進(jìn)制還要部署web文件比較繁瑣,在go1.16之前也有很多包實現(xiàn)了內(nèi)嵌資源文件到二進(jìn)制中如https://github.com/gobuffalo/packr,而如今go官方實現(xiàn)了這個特性
package mainimport ( _ "embed" "fmt")//go:embed Dockerfilevar f stringfunc main() { fmt.Println(f)}
上面的例子就是將當(dāng)前目錄的dockerfile內(nèi)容內(nèi)嵌到變量f中,編譯之后即使這個文件不存在也能打印出內(nèi)容
package mainimport ( "embed" "fmt" "path/filepath")//go:embed foovar fs embed.FSfunc main() { files, err := fs.ReadDir("foo") if err != nil { fmt.Println(err) } for _, file := range files { d, _ := fs.ReadFile(filepath.Join("foo", file.Name())) if err != nil { fmt.Println(err) } fmt.Println("文件名:", file.Name(), "內(nèi)容:", string(d)) }}
上面的代碼將目錄下的foo目錄內(nèi)嵌到fs這個變量中,然后打印出這個文件夾里文字的名字和內(nèi)容
$ tree foo foo ├── test └── test2 0 directories, 2 files # 編譯 $ go build -o test . # 執(zhí)行 $ ./test 文件名: test 內(nèi)容: hahah 文件名: test2 內(nèi)容: testest
路徑默認(rèn)是從mod的目錄為根目錄
會忽略”.“開頭和”_“開頭的文件
不管是win還是linux都使用”/“
支持匹配如,//go:embed foo/*.yaml
可以同時導(dǎo)入多個目錄 如//go:embed foo test
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/127884.html
摘要:去掉,竟然被設(shè)置高于遮住了,神奇的存在。最終解決方案是菜單顯示時,一起觸發(fā)層顯示遮住,菜單隱藏時觸發(fā),隱藏附加網(wǎng)上常見情況內(nèi)嵌,解決為內(nèi)嵌視頻,解決為 embed基本沒怎么用過,一開始看見竟然以為是過時的播放器標(biāo)簽,就隨口說了這個已經(jīng)時了吧 (汗顏,果斷不了解清楚不能亂說話) 認(rèn)識: 標(biāo)簽定義嵌入的內(nèi)容,比如插件是HTML5的新標(biāo)簽 我遇到的問題: 問題簡述: embed內(nèi)嵌插件: ...
摘要:你可以試著沿著調(diào)用棧代碼一層一層的深入進(jìn)去,如果你不打斷點,你根本不知道接下來程序會往哪里流動。接下來再看看運行時堆棧,看看一個請求的調(diào)用棧有多深。就是如此被自動裝配進(jìn)的。 摘要: 神奇的SpringBoot。 原文:SpringBoot 究竟是如何跑起來的? 作者:老錢 Fundebug經(jīng)授權(quán)轉(zhuǎn)載,版權(quán)歸原作者所有。 不得不說 SpringBoot 太復(fù)雜了,我本來只想研究一下...
摘要:同時,也提供了一個命令行工具來執(zhí)行的腳本。應(yīng)用監(jiān)控提供一系列端點可以監(jiān)控服務(wù)及應(yīng)用,能對應(yīng)用做健康檢測。這樣,需要對配置信息非常熟悉,要找起問題來不是很容易。相對于優(yōu)點來說,這些缺點也都不算什么。總之,是值得我們?nèi)魏我粋€開發(fā)者嘗試摸索的。 現(xiàn)在 Spring Boot 非?;穑鞣N技術(shù)文章,各種付費教程,多如牛毛,可能還有些不知道 Spring Boot 的,那它到底是什么呢?有什么用...
摘要:完美總結(jié)中嵌入圖片的種方式在解決這個問題的過程中,順便查了下,發(fā)現(xiàn)除了這個是最容易想到的因為圖片也是圖片嘛。不過和標(biāo)簽一樣,無法顯示內(nèi)嵌的使用標(biāo)簽標(biāo)簽是新增的一個專門顯示圖片的標(biāo)簽。 最近用到了個SVG圖片,里面還是帶標(biāo)簽的,想要把它嵌入到HTML中還是有些工作要做的。 經(jīng)歷 最初的圖片是這樣寫的: 這是百度 ? p.s. 先拿百度的圖...
閱讀 1582·2025-02-07 13:29
閱讀 1007·2024-11-07 18:25
閱讀 131501·2024-02-01 10:43
閱讀 1360·2024-01-31 14:58
閱讀 1147·2024-01-31 14:54
閱讀 83574·2024-01-29 17:11
閱讀 3875·2024-01-25 14:55
閱讀 2392·2023-06-02 13:36