如何用Golang实现第一个Hello World项目_Golang新手入门实战示例
发布时间 - 2026-01-31 00:00:00 点击率:次只需两行代码即可运行Go程序:package main和fmt.Println("Hello, World!"),用go run hello.go执行,无需配置环境变量或初始化模块。
直接用 go run 就能跑通,不需要配置环境变量或新建项目目录——只要你已安装 Go(1.16+),hello.go 文件里只写两行代码就足够。
创建并运行 hello.go 文件
在任意目录下新建文本文件,命名为 hello.go,内容如下:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
然后终端执行:
go run hello.go
你会立刻看到输出:Hello, World!。注意三点:
-
package main是可执行程序的固定包名,不能写成package hello -
func main()必须小写,且不能带参数、不能有返回值,否则go run会报cannot run non-main package或func main must have no arguments and no return values -
fmt.Println结尾有n,漏掉会不换行,但不会报错——容易误以为没输出
为什么不用 go mod init?
新手常被教程误导,一上来就 go mod init example.com/hello。其实:go run 对单文件无模块依赖时完全跳过模块系统;只有当你引入本地包、第三方包,或后续要 go build 成二进制时,才需要 go mod init。过早初始化反而可能因 GOPROXY 或网络问题卡住。
如果你确实想初始化模块(比如为后续加依赖做准备),只需确保当前目录为空或仅含 hello.go,再运行:
go mod init hello
它会生成 go.mod,内容极简:
module hello go 1.21
此时再 go run hello.go 依然正常——模块只是为依赖服务,不改变单文件执行逻辑。
常见报错与对应修复
遇到运行失败?大概率是下面这几个原因:
-
command not found: go:Go 未加入$PATH,检查安装后是否重启终端,或手动执行/usr/local/go/bin/go version确认路径 -
no required module provides package fmt:几乎不可能出现——fmt是标准库,只要 Go 装对了就一定存在;若真出现,说明 Go 安装损坏,重装即可 - 终端没反应 / 空白输出:检查是否误用了
fmt.Print(无换行)且终端滚动太快;或文件编码是 UTF-8 with BOM(Windows 记事本常见),改用 VS Code 或vim保存为纯 UTF-8 -
undefined: Println:大小写写错,比如printLn或println,Go 区分大小写,必须是Println
真正卡住新手的,往往不是语法,而是编辑器自动保存了隐藏字符、终端缓存了旧二进制、或者复制代码时带入了全角空格——建议所有代码手敲一遍,别复制。
# go
# windows
# golang
# 编码
# ai
# proxy
# 环境变量
# win
# vs code
# 网络问题
# 标准库
# 为什么
# print
# undefined
# bom
# vim
# 只需
# 全角
# 报错
# 会报
# 两行
# 换行
# 如果你
# 就能
# 你会
# 不需要
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
详解jQuery停止动画——stop()方法的使用
ChatGPT 4.0官网入口地址 ChatGPT在线体验官网
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
打造顶配客厅影院,这份100寸电视推荐名单请查收
Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】
如何为不同团队 ID 动态生成多个“认领值班”按钮
Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载
微信小程序制作网站有哪些,微信小程序需要做网站吗?
Laravel如何生成和使用数据填充?(Seeder和Factory示例)
C语言设计一个闪闪的圣诞树
Laravel观察者模式如何使用_Laravel Model Observer配置
IOS倒计时设置UIButton标题title的抖动问题
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
如何彻底删除建站之星生成的Banner?
Laravel如何自定义分页视图?(Pagination示例)
Python3.6正式版新特性预览
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
如何确保FTP站点访问权限与数据传输安全?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
Internet Explorer官网直接进入 IE浏览器在线体验版网址
利用 Google AI 进行 YouTube 视频 SEO 描述优化
网站制作企业,网站的banner和导航栏是指什么?
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
C#如何调用原生C++ COM对象详解
微信小程序 require机制详解及实例代码
Laravel如何保护应用免受CSRF攻击?(原理和示例)
企业网站制作这些问题要关注
Laravel如何使用.env文件管理环境变量?(最佳实践)
消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工
Swift中switch语句区间和元组模式匹配
高端云建站费用究竟需要多少预算?
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
如何快速搭建高效WAP手机网站?
Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境
郑州企业网站制作公司,郑州招聘网站有哪些?
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
动图在线制作网站有哪些,滑动动图图集怎么做?
如何在 Pandas 中基于一列条件计算另一列的分组均值
如何利用DOS批处理实现定时关机操作详解
如何快速上传建站程序避免常见错误?
如何在云主机快速搭建网站站点?
原生JS获取元素集合的子元素宽度实例
如何挑选最适合建站的高性能VPS主机?
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
nodejs redis 发布订阅机制封装实现方法及实例代码
Bootstrap整体框架之CSS12栅格系统
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?


