处理同一目录中的多个包
问题:
维护是否可行一个包内有两个包目录?
背景:
在项目同时包含库和命令行界面 (CLI) 的场景中,出现的问题是:将它们构建为同一目录中的单独包。这种担忧源于编译项目时的潜在冲突,因为包 main 和 func main 声明对于运行 CLI 至关重要,但与库所需的包 myproject 声明冲突。
答案:
要解决此问题,建议在主目录中创建一个新的子文件夹,并将库或 CLI 移动到新文件夹。这样可以确保两个包之间的隔离并避免命名冲突。
解决方案:
示例:
考虑以下示例结构:
whatever.io/ myproject/ main.go lib/ myproject.go
在本例中,库 myproject 已移动到lib 子文件夹。 main.go 文件现在可以使用以下方式导入库:
import "../lib/myproject"
这种方法在解决编译冲突的同时保留了项目的组织。
其他资源:
以上是多个Go包可以共存于一个目录中吗?的详细内容。更多信息请关注PHP中文网其他相关文章!