为了账号安全,请及时绑定邮箱和手机立即绑定

无法解析 .proto 文件中的导入

无法解析 .proto 文件中的导入

Go
慕村9548890 2022-06-27 10:45:20
我在路径中创建了以下 .proto 文件:microservice/internal/proto-files/domain/repository.protosyntax = "proto3";package domain;option go_package = "microservice/internal/gRPC/domain";message Repository {  int64 id  = 1;  string name = 2;  int64 userId = 3;  bool isPrivate = 4;}并在另一个路径中关注 .proto 文件:microservice/internal/proto-files/servicesyntax = "proto3";package service;option go_package = "microservice/internal/gRPC/service";import "microservice/internal/proto-files/domain/repository.proto";//RepositoryService Definitionservice RepositoryService {  rpc add (domain.Repository) returns (AddRepositoryResponse);}message AddRepositoryResponse {  domain.Repository addedRepository = 1;  Error error = 2;}message Error {  string code = 1;  string message = 2;}但是我的 IDE(goland) 无法解析 repository-service.proto 中的导入,并且当我使用 protoc 命令生成 .pb.go 文件时,我将面临以下错误:microservice/internal/proto-files/domain/repository.proto: File not found.
查看完整描述

2 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

首先,您的导入路径最好是这样的:

import "domain/repository.proto";

您必须将 proto 文件的路径添加到 Goland。为此,您必须转到settingLanguages & Frameworks>Protocol Buffers然后取消选中Configure automatically

之后在导入路径上添加此路径。

microservice/internal/proto-files

像这样 :

//img1.sycdn.imooc.com//62b919db00012c0210400752.jpg

查看完整回答
反对 回复 2022-06-27
?
达令说

TA贡献1821条经验 获得超6个赞

我也有同样的问题; 当我使用“implort domail/file-name.proto”语句时,IDE 会给我错误消息: Cannot resolve import 'domain/file-name.proto"

最后我发现了我的问题:父文件夹没有标记为“Resources Root”,所以我标记了它并解决了我的问题。

//img1.sycdn.imooc.com//62b919eb00010ad406570551.jpg

查看完整回答
反对 回复 2022-06-27
  • 2 回答
  • 0 关注
  • 298 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信