今天小編給大家分享的是golang熱更新的技巧,很多人都不太了解,今天小編為了讓大家更加了解golang,所以給大家總結了以下內(nèi)容,一起往下看吧。一定會有所收獲的哦。
創(chuàng)新互聯(lián)公司為您提適合企業(yè)的網(wǎng)站設計?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強的網(wǎng)絡競爭力!結合企業(yè)自身,進行網(wǎng)站設計及把握,最后結合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到做網(wǎng)站、成都網(wǎng)站設計, 我們的網(wǎng)頁設計師為您提供的解決方案。golang可以熱更新。
下面我們就來看一下使用go+realize實現(xiàn)熱更新:
安裝realize
因為之前項目里面安裝了 gin 作為 web 框架,所以路由都已經(jīng)寫好了,供后面測試的時候用。
go get github.com/oxequa/realize
安裝的時候可能會提示安裝某個包失?。╣olang.org開頭),不用慌,這幾個包可以去 golang 的倉庫克隆下來,放到 $GOPATH/src/golang.org/x 目錄下。
配置
運行 realize init 進行一步步配置,也可以一直回車,然后參考我的配置再修改下即可,schema 下的 name 和 path 請按照實際情況寫。如果你的機器是 Mac,請把殺進程命令換成pkill,這一步很重要,否則重新編譯時 Gin 會一直這樣提示,導致熱更新失敗。
[GIN-debug] [ERROR] listen tcp :8080: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted
settings: files: outputs: status: false path: "" name: .r.outputs.log logs: status: false path: "" name: .r.logs.log errors: status: true path: "" name: .r.errors.log legacy: force: false interval: 100ms server: status: true open: false port: 8080 host: http://localhost schema: - name: gin_app path: E:/WorkPlace/Go/app/gin_app/ commands: # clean: # status: true # vet: # status: true # fmt: # status: true # test: # status: true # generate: # status: true install: status: true # build: # status: true run: status: true watcher: extensions: - go paths: - / scripts: - type: before command: tskill gin_app output: true ignored_paths: - .git - .realize - vendor
修改realize包
依次執(zhí)行下面命令
cd /go/src/github.com/oxequa/realize git fetch git checkout v2.0.2 go get github.com/oxequa/realize
再去項目目錄下運行 realize start 就可以了,熱更新也正常了。
關于golang熱更新的技巧就分享到這里了,當然并不止以上和大家分析的辦法,不過小編可以保證其準確性是絕對沒問題的。希望以上內(nèi)容可以對大家有一定的參考價值,可以學以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。