猿问

go 模块是否提供了类似于 maven 范围的机制?

说我在开发一个p系统的插件A,所以p自然要看A开发和测试的时候。

但是一旦pA. 在 Maven 中,可以使用provided范围声明依赖项,以避免不必要的版本冲突。

如何在 go 模块中实现这一点?


守着一只汪
浏览 271回答 1
1回答

叮当猫咪

不,不是的。但这不是什么大问题。假设您有foo_test.go,其中包括 to 的依赖项foo/bar/baz。现在,这个依赖项只会链接到测试二进制go test编译中。它不会包含在“主”二进制文件中。这是 Go 的一个优点 - 编译器识别需要链接的内容并使用 Go 模块,他有一份材料清单,不仅按名称定义所需的依赖项,而且还包括提交。正如所写的那样,将其内容想象成go.mod在处理项目时有时需要的材料清单,而不是构建胖 JAR的一组指令。旁注:即使是 Maven 依赖项通常也不会进入生成的 JAR。Spring Boot 会这样做,但这不是默认的 Maven 行为;构建瘦 JAR是。
随时随地看视频慕课网APP

相关分类

Go
我要回答