介紹一款Go項目熱編譯工具-gowatch


# 使用場景 在golang項目編寫過程中,需要對項目不斷的進行構建`go build`並調試以快速發現問題,而我們每次進行手動的進行`go build`又太重復,所以寫了這么一個工具`gowatch`來實時的監聽文件的改動並編譯。 # 快速入門 ## 安裝使用 ``` go get github.com/silenceper/gowatch ``` 安裝完成之后,在main包目錄下執行`gowatch`命令: ![gowatch](https://raw.githubusercontent.com/silenceper/gowatch/master/screenshot/gowatch.png) ## 高級用法 支持的命令行參數: - -o : 非必須,指定build的目標文件路徑 - -p : 非必須,指定需要build的package(也可以是單個文件) - -args: 非必須,指定程序運行時參數,例如:-args='-host=:8080,-name=demo' - -v: 非必須,顯示gowatch版本信息 例如: ``` gowatch -o ./bin/demo -p ./cmd/demo ``` gowatch同時也提供了配置文件的方式,支持更多的個性化的配置,默認當前目錄下的gowatch.yaml配置文件: ``` # gowatch.yml 配置示例 # 當前目錄執行下生成的可執行文件的名字,默認是當前目錄名 appname: "test" # 指定編譯后的目標文件目錄 output: /bin/demo # 需要追加監聽的文件名后綴,默認只有'.go'文件 watch_exts: - .yml # 需要監聽的目錄,默認只有當前目錄 watch_paths: - ../pk # 在執行命令時,需要增加的其他參數 cmd_args: - arg1=val1 # 在構建命令時,需要增加的其他參數 build_args: - -race # 需要增加環境變量,默認已加載當前環境變量 envs: - a=b # 是否監聽 ‘vendor’ 文件夾下的文件改變 vendor_watch: false # 不需要監聽的目錄名字 excluded_paths: - path # main 包路徑,也可以是單個文件,多個文件使用逗號分隔 build_pkg: "" # build tags build_tags: "" # 是否禁止自動運行 disable_run: false ``` 項目地址:https://github.com/silenceper/gowatch >加入Golang興趣小組,關注公眾號“學點程序”,並回復“入群” > 關注"學點程序"公眾號,了解更多干貨內容 ![學點程序](https://silenceper.oss-cn-beijing.aliyuncs.com/qrcode/qr_code_study_program_430.jpg )


免責聲明!

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



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