網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
1.go項(xiàng)目在window下編譯簡(jiǎn)易打包
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
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é)
原文鏈接:https://blog.csdn.net/k393393/article/details/122674509
相關(guān)推薦
- 2022-11-09 Go語(yǔ)言如何使用golang-jwt/jwt/v4進(jìn)行JWT鑒權(quán)詳解_Golang
- 2022-07-04 C語(yǔ)言植物大戰(zhàn)數(shù)據(jù)結(jié)構(gòu)堆排序圖文示例_C 語(yǔ)言
- 2022-06-07 Python必備技巧之函數(shù)的使用詳解_python
- 2022-09-02 Docker資源限制Cgroup的深入理解_docker
- 2022-04-05 C語(yǔ)言實(shí)現(xiàn)自動(dòng)售貨機(jī)_C 語(yǔ)言
- 2023-04-06 C++中的memset用法詳解_C 語(yǔ)言
- 2022-10-02 Go語(yǔ)言快速入門指針Map使用示例教程_Golang
- 2022-12-12 python字符串中兩個(gè)大括號(hào){{}}的使用及說(shuō)明_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支