go項(xiàng)目打包部署的完整步驟
1.go項(xiàng)目在window下編譯簡易打包
1).在windows下直接編譯生成main.exe文件
在項(xiàng)目main.go同級(jí)目錄下執(zhí)行以下命令
go build main.go
2).將當(dāng)前目錄下的main.go打包成gotest.exe文件(在windows下可以直接執(zhí)行)
在項(xiàng)目main.go同級(jí)目錄下執(zhí)行以下命令
go build -o gotest.exe main.go
2.項(xiàng)目在window下打包成其他系統(tǒng)可運(yùn)行的文件
1).在window下打包成linux
在項(xiàng)目main.go同級(jí)目錄下,逐條執(zhí)行以下命令
set CGO_ENABLED=0 set GOOS=linux set GOARCH=amd64 go build -o main-linux main.go
將abc-demo-linux文件放入linux系統(tǒng)任何文件夾下,chmod 773 賦予文件可執(zhí)行權(quán)限,到當(dāng)前文件夾下執(zhí)行./abc-demo-linux
命令即可執(zhí)行文件(不需要安裝go,就是二進(jìn)制文件)就可以直接運(yùn)行了
2).在window下打包成window下可執(zhí)行文件
在項(xiàng)目main.go同級(jí)目錄下,逐條執(zhí)行以下命令
set CGO_ENABLED=0 set GOOS=windows set GOARCH=amd64 go build -o main-windows.exe main.go
3).在window下打包成mac系統(tǒng)可執(zhí)行文件
在項(xiàng)目main.go同級(jí)目錄下,逐條執(zhí)行以下命令
set CGO_ENABLED=0 set GOOS=darwin set GOARCH=amd64 go build -o main-mac main.go
3.項(xiàng)目在Mac下打包成其他系統(tǒng)可運(yùn)行的文件
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o abc-demo-linux main.go CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o abc-demo-mac main.go CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o abc-demo-windows.exe main.go
4.Linux主機(jī)編譯Widows,MAC客戶端
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o abc-demo-linux main.go CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o adc-demo-mac main.go CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o abc-demo-windows.exe main.go
5.使用goreleaser多平臺(tái)打包
1).安裝goreleaser
解壓縮后配置環(huán)境變量
填好環(huán)境變量后一路確定就好了
在cmd中查看版本
goreleaser -v
2).在該項(xiàng)目根目錄執(zhí)行 goreleaser init 初始化配置
在項(xiàng)目根目錄下執(zhí)行goreleaser init
命令,會(huì)生成一個(gè).goreleaser.yaml
的文件
3).添加git 支持同時(shí)添加tag
在項(xiàng)目根目錄下執(zhí)行一下命令
要用git關(guān)聯(lián)github
git init git add . git commit -m "go項(xiàng)目" git remote add origin 自己的github地址 git push -u origin master
4).使用goreleaser打包
打包命令
goreleaser --snapshot --skip-publish --rm-dist
總結(jié)
到此這篇關(guān)于go項(xiàng)目打包部署的文章就介紹到這了,更多相關(guān)go項(xiàng)目打包部署內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Goland使用Go Modules創(chuàng)建/管理項(xiàng)目的操作
這篇文章主要介紹了Goland使用Go Modules創(chuàng)建/管理項(xiàng)目的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-05-05Go語言高效I/O并發(fā)處理雙緩沖和Exchanger模式實(shí)例探索
這篇文章主要介紹了Go語言高效I/O并發(fā)處理雙緩沖和Exchanger模式實(shí)例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01Go中Goroutines輕量級(jí)并發(fā)的特性及效率探究
這篇文章主要為大家介紹了Go中Goroutines輕量級(jí)并發(fā)的特性及效率探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12Go語言實(shí)現(xiàn)的簡單網(wǎng)絡(luò)端口掃描方法
這篇文章主要介紹了Go語言實(shí)現(xiàn)的簡單網(wǎng)絡(luò)端口掃描方法,實(shí)例分析了Go語言網(wǎng)絡(luò)程序的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-02-02