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

相关推荐
lsx202406几秒前
CSS 图片廊
开发语言
coderxiaohan几秒前
【C++】C++11
开发语言·c++
雾岛听蓝2 分钟前
C++优选算法 | 双指针篇(一)
开发语言·c++
byzh_rc2 分钟前
[微机原理与系统设计-从入门到入土] 微型计算机基础
开发语言·javascript·ecmascript
编程大师哥4 分钟前
Java web
java·开发语言·前端
书中藏着宇宙5 分钟前
CornerNet的续篇(数据处理与训练)
开发语言·python
你怎么知道我是队长10 分钟前
C语言---预处理器
c语言·开发语言·chrome
JAVA+C语言12 分钟前
Java ThreadLocal 的原理
java·开发语言·python
用户268516121075623 分钟前
GMP 调度器深度学习笔记
后端·go
精神小伙就是猛25 分钟前
C# Task/ThreadPool async/await对比Golang GMP
开发语言·golang·c#