go --- go run main.go 和 go run .

目录

  • [go run main.go](#go run main.go)
  • [go run .](#go run .)
  • 示例

go run main.go

  • 功能 :只编译和运行指定的文件(main.go),忽略同目录下的其他文件。
  • 适用场景
    • 当你只需要运行一个独立的文件,且该文件不依赖其他文件时。
    • 适合单文件程序或简单的脚本。
  • 限制
    • 如果main.go依赖fun.go中的函数或变量,go run main.go会报错,因为fun.go没有被编译。
    • 无法正确处理多文件项目中的依赖关系。

go run .

  • 功能 :编译并运行当前目录下的所有.go文件。
  • 适用场景
    • 适用于多文件项目,尤其是当多个文件之间存在依赖关系时。
    • 确保所有相关文件都被编译和链接。
  • 优点
    • 能够正确处理文件之间的依赖关系。
    • 更适合实际的项目开发,尤其是模块化开发。

示例

如图,在文件夹open_telemetry中有两个go文件:server1.go和roll.go,且package都是main。

运行go run server1.go时,会报错roll方法找不到,因为此时只编译了server1.go文件。

运行go run .时,服务正常启动,因为此时open_telemetry下的所有文件都被编译了

相关推荐
Scott9999HH6 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
GetcharZp7 小时前
抛弃低效SSH!这套Ansible+Web可视化神器,让你天天准点下班!
后端
码智社7 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
AI云海7 小时前
python 列表、元组、集合和字典
开发语言·python
萧瑟余晖8 小时前
JDK 26 新特性详解
java·开发语言
马优晨9 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
weixin_4462608510 小时前
HACO:面向动态部署环境的对冲式智能计算可靠多智能体调度框架
后端·python·flask
人邮异步社区10 小时前
怎么把C语言学到精通?
c语言·开发语言
心平气和量大福大11 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf