无法解析.proto文件中的导入 [英] Cannot resolve import in .proto file

查看:16
本文介绍了无法解析.proto文件中的导入的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在路径中创建了以下.proto文件:microservice/internal/proto-files/domain/repository.proto

syntax = "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/service

syntax = "proto3";

package service;

option go_package = "microservice/internal/gRPC/service";

import "microservice/internal/proto-files/domain/repository.proto";

//RepositoryService Definition
service 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)无法解析pository-service.proto中的导入,而且当我使用proc命令生成.pb.go文件时,我将面临以下错误:

microservice/internal/proto-files/domain/repository.proto: File not found.

推荐答案

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

import "domain/repository.proto";
您必须将原型文件的路径添加到Goland。为此,您必须转到setting>;Languages & Frameworks>;Protocol Buffers,然后取消选中Configure automatically

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

microservice/internal/proto-files

如下所示:

这篇关于无法解析.proto文件中的导入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆