goland 新建 go 文件的注释由 file and code templates 控制,路径为 preferences → editor → file and code templates → go file;必须确保第一行为 package ${go_package_name},其后跟空行再写注释,且需在当前项目设置中修改并检查编码与模板选中状态。

GoLand 新建 Go 文件时自动插入的注释,由 File and Code Templates 控制,不是靠 Live Templates 或插件实现的 —— 改错地方会导致新建文件没注释,或者注释格式乱掉。
在哪改:Preferences → Editor → File and Code Templates → Go File
这是唯一生效路径。别去 Live Templates 或 Goanno 设置里找,那类配置只影响已有代码的快捷补全,不影响新建文件。
- 打开后,在右侧
Go File模板文本框中直接编辑内容 - 支持预定义变量,比如
${DATE}、${TIME}、${GO_PACKAGE_NAME}、${USER} - 注意:第一行必须是
package声明,注释要写在它后面(Go 规范要求文件注释紧贴package后) - 如果模板里漏了
package ${GO_PACKAGE_NAME},新建文件会直接报错expected 'package', found 'EOF'
常见错误模板写法及后果
很多人复制网上示例时忽略换行和空行,导致生成注释错位或编译失败。
GoLand 2026.1.1 是 2026.1 发布后的首个维护修正版本,适合已经开始体验 2026.1 新功能并希望同步补丁的开发者。它更适合用于入门项目、现有项目迁移测试和 IDE 行为验证。
- 错误写法:
// @Title ${NAME}.go\npackage ${GO_PACKAGE_NAME}→ 注释在package前,Go 会报expected 'package', found '//' - 正确顺序:先
package ${GO_PACKAGE_NAME},再空行,再注释块 - 别用
${NAME}替代文件名 —— 它返回的是模板名(如 “Go File”),不是你保存时输入的文件名;要用${FILE_NAME} - 时间格式建议写成
${DATE} ${TIME},而不是${YEAR}-${MONTH}-${DAY} ${HOUR}:${MINUTE}:${SECOND},后者在某些版本里不解析
为什么改完不生效?检查这三点
改完点 Apply 却发现新建文件还是老样子,大概率卡在这几个环节:
- 没选中左侧列表里的
Go File,而是改了Go Test File或其他模板 - 项目用了
.editorconfig,且里面设置了charset=utf-8但模板含中文,导致 IDE 拒绝加载(表现为模板内容变为空白) - 当前项目启用了“基于项目设置”,但你在“Default Settings”里改的 —— 要切到右上角齿轮图标选
Settings for Current Project再改
最易被忽略的是模板中 package 和注释之间的空行:Go 要求文件注释必须紧跟 package 声明之后,中间不能有其他语句,但可以有一行空白;少了这一行,注释就变成非法 token。










