首页 > 解决方案 > .Net Framework/C# - --grpc_out:protoc-gen-grpc:访问被拒绝问题

问题描述

我有一个 .Net 4.7.2 项目,并且使用 NuGet 包 v2.26.0 设置了我的消息项目。我的环境文件路径中有 protoc,可以运行 protoc --version 等命令。

尝试生成我的 grpc 代码时,我运行以下命令:

C:\Samples\MyGrpc>protoc -I .\pb --csharp_out .\Grpc\Messages .\pb\messages.proto --grpc_out .\Grpc\Messages --plugin=protoc-gen-grpc=.\Grpc\ packages\Grpc.Tools.2.26.0\tools\windows_x64 --grpc_out: protoc-gen-grpc: 访问被拒绝。

我正在以管理员身份打开的 Windows cmd 提示符运行此命令。

我的主要 Visual Studio 项目文件夹是 Grpc,下面有 Message 项目。

我不确定我被拒绝访问什么。有任何想法吗?

谢谢!

标签: protocol-buffers

解决方案


我发现问题在于,在 --plugin 命令中,我必须输入插件可执行文件的名称,即包括 .exe 名称的整个路径。那时它奏效了。

C:\Samples\MyGrpc>protoc -I .\pb --csharp_out .\Grpc\Messages .\pb\messages.proto --grpc_out .\Grpc\Messages --plugin=protoc-gen-grpc=.\Grpc\包\Grpc.Tools.2.26.0\tools\windows_x64\grpc_csharp_plugin.exe

谢谢!


推荐阅读