Go:no required module provides package...to add it:...

本文记录了一次在Go项目中因重命名模块而导致的编译错误。在将`frontend`目录改名为`frontend-src`后,源码中的导入路径未随之更新,从而引发`norequiredmoduleprovidespackage`错误。通过尝试使用`go get`修复问题失败,最终解决方案是手动修改所有引用该模块的导入路径。这个案例强调了在重构时同步更新依赖路径的重要性。

Go:no required module provides package…to add it:…


记录一次Go编译报错

项目地址:

https://github.com/apache/servicecomb-service-center

源码修改:

将项目根目录中frontend重命名为frontend-src:

在这里插入图片描述

编译报错:

$ go build -o frontend
server.go:25:2: no required module provides package github.com/apache/servicecomb-service-center/frontend/schema; to add it:
        go get github.com/apache/servicecomb-service-center/frontend/schema

在这里插入图片描述

根据报错提示尝试解决:

EB@DESKTOP-K45IA6V MINGW64 /d/workspace/sme/trunk/servicecomb/servicecomb-service-center-1.3.0/frontend-src
$ go get github.com/apache/servicecomb-service-center/frontend/schema
go get: module github.com/apache/servicecomb-service-center/frontend/schema: reading https://goproxy.io/github.com/apache/servicecomb-service-ce
nter/frontend/schema/@v/list: 404 Not Found
        server response: not found: github.com/apache/servicecomb-service-center/frontend/schema@latest: no matching versions for query "latest"

在这里插入图片描述

仍然报错。(因为确实没有这个module)

解决方法:

猛然想起,自己rename frontend to frontend-src,但是没有修改源码中的导入路径:

在这里插入图片描述

修改项目内部目录(包名、位置发生变化),也应当修改项目内部依赖此包的文件中对此包的导入路径:

rename

import “github.com/apache/servicecomb-service-center/frontend/schema”

to

import “github.com/apache/servicecomb-service-center/frontend-src/schema”

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值