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下的所有文件都被编译了

相关推荐
m0_7269659821 分钟前
面面面,面面(1)
java·开发语言
2401_831920741 小时前
分布式系统安全通信
开发语言·c++·算法
代码栈上的思考1 小时前
消息队列:内存与磁盘数据中心设计与实现
后端·spring
~无忧花开~1 小时前
React状态管理完全指南
开发语言·前端·javascript·react.js·前端框架
程序员小假1 小时前
我们来说一下 b+ 树与 b 树的区别
java·后端
阿贵---2 小时前
C++中的RAII技术深入
开发语言·c++·算法
Traced back2 小时前
怎么用 Modbus 让两个设备互相通信**,包含硬件接线、协议原理、读写步骤,以及 C# 实操示例。
开发语言·c#
Meepo_haha2 小时前
Spring Boot 条件注解:@ConditionalOnProperty 完全解析
java·spring boot·后端
sheji34162 小时前
【开题答辩全过程】以 基于springboot的房屋租赁系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端