导入“。”是一个程序,而不是一个可导入的包

问题描述 投票:0回答:1

我正在尝试在Golang中为gRPC创建一个tools.go,基本上是使用Gateway创建基于gRPC的REST API。不过,我试图将导入放入 tools.go 文件夹中的

package main
中。这是有问题的代码:

//go:build tools
// +build tools

package tools

import (
    _ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway"
    _ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2"
    _ "google.golang.org/grpc/cmd/protoc-gen-go-grpc"
    _ "google.golang.org/protobuf/cmd/protoc-gen-go"
)

并且提示错误

import "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway" is a program, not an importable package

代码中的空白标识符或

_
也以红色突出显示。

Here's The Image

到目前为止我尝试过的事情

我的一个朋友也做了同样的程序,并且对他们有效。难道这也是一个环境问题?感谢您的帮助。

visual-studio go import grpc gateway
1个回答
0
投票

这可能有点晚了,但是,这里没有什么问题。这只是一个编辑器警告,您可以根据https://github.com/grpc-ecosystem/grpc-gateway/issues/3515忽略它。

您已完全按照文档/github页面中所述进行安装。运行 go mod tidy 和其他特定于您的项目的附加设置后,您会发现您可以使用 protoc/protobuf 生成代码,没有任何问题。

© www.soinside.com 2019 - 2024. All rights reserved.