Go 从其他模块导入包
我必须在现有Go后端代码的基础上创建一个桌面应用程序,因为我正在使用这个需求和我在web开发方面的知识 使用Wails CLI,我在后端主项目的子文件夹中生成了桌面应用程序项目。 以下是文件夹结构的外观:Go 从其他模块导入包,go,desktop-application,wails,Go,Desktop Application,Wails,我必须在现有Go后端代码的基础上创建一个桌面应用程序,因为我正在使用这个需求和我在web开发方面的知识 使用Wails CLI,我在后端主项目的子文件夹中生成了桌面应用程序项目。 以下是文件夹结构的外观: backend ├── [...] ├── logger │ └── logger.go ├── gui │ └── desktopApp │ ├── build │ │ └── desktopApp │ ├── frontend │
backend
├── [...]
├── logger
│ └── logger.go
├── gui
│ └── desktopApp
│ ├── build
│ │ └── desktopApp
│ ├── frontend
│ │ └── [...]
│ ├── go.mod
│ ├── go.sum
│ ├── main.go
│ └── project.json
├── main.go
├── go.mod
└── go.sum
记录器
已导入desktopApp,在开发和测试过程中,通过浏览器一切正常。但是,当我使用desktopApp文件夹中的命令wails build
构建桌面应用程序时,我遇到了以下错误:
go: <domain>/<owner>/backend/logger: unrecognized import path "<domain>/<owner>/backend"
go://backend/logger:无法识别的导入路径”//backend
我在桌面应用程序中导入了后端,如下所示:
module desktopApp
go 1.15
require (
<domain>/<owner>/backend/logger
)
// Added this line
replace <domain>/<owner>/backend/logger => ../../
/后端/gui/desktopApp/go.mod
module desktopApp
go 1.15
require (
<domain>/<owner>/backend v0.0.0
)
模块desktopApp
1点15分
要求(
//后端v0.0.0
)
./gui/desktopApp/main.go
package main
import (
"github.com/leaanthony/mewn"
"github.com/wailsapp/wails"
"<domain>/<owner>/backend/logger"
)
// Using the logger package normally
主程序包
进口(
“github.com/leaanthony/mewn”
“github.com/wailsapp/wails”
“//后端/记录器”
)
//正常使用记录器软件包
如何解决我的问题?我看到您使用
go模块
,并将代码存储在repo
和子模块
问题是您忘记添加“desktopApp”-前缀
正确使用我解决了我的问题,更改嵌套桌面应用程序的
go.mod
文件如下:
module desktopApp
go 1.15
require (
<domain>/<owner>/backend/logger
)
// Added this line
replace <domain>/<owner>/backend/logger => ../../
模块desktopApp
1点15分
要求(
//后端/记录器
)
//增加了这一行
替换//后端/记录器=>..//
我编辑了这个问题,因为它可能不清楚backend
是现有的回购协议,我创建了desktopApp
作为子模块。不管怎样,我正试图用你的暗示来解决它。