依赖包的版本问题,别的开发语言有没有类似的问题?是怎么解决的?
举例:java
java的依赖包的版本问题,通过Maven模块来操作,可以指定依赖包版本号,如下:
go.mod 文件
go.mod文件是Go模块系统中的核心文件,用于定义和管理一个 Go 项目的依赖关系和模块信息(如依赖包的路径和版本号)。
go.sum 文件
go.sum 文件的目的是为了确保依赖包的一致性,防止依赖包错误、被黑客篡改等。
go.sum文件记录了每个依赖包的哈希值,在构建时,如果本地的依赖包 hash 值与go.sum文件中记录得不一致,则会拒绝构建。
总结:go.sum 文件引入依赖包的路径和版本号,而go.sum校验引入的依赖包。