首页
视频
资源
登录
DJ王重阳
慢慢来
博主信息
排名
6
文章
6
粉丝
16
评论
8
文章类别
ORM_EF
3篇
.NET Core
2篇
最新文章
最新评价
{{item.articleTitle}}
{{item.blogName}}
:
{{item.content}}
关于我们
ICP备案 :
渝ICP备18016597号-1
网站信息:
2018-2024
TNBLOG.NET
技术交流:
群号656732739
联系我们:
contact@tnblog.net
欢迎加群
欢迎加群交流技术
原
关于Grpc服务报错"protoc-gen-grpc:系统找不到指定的路径。"
8892
人阅读
2021/6/12 0:46
总访问:
24059
评论:
0
收藏:
2
手机
分类:
.NET Core
tn> 前言:今天上午都在搞这个,重新创建了很多次新的Grpc项目,也下了很多次不同的`Grpc.AspNetCor`包,未果,因为这个错与VS2019使用和创建项目无关,算是一个奇奇怪怪的错,所以来记一哈 tn3# 创建一个Grpc 如下图: ![Grpc服务创建](https://img.tnblog.net/arcimg/17726394069/00bdee243543483e913f29a0ea63b531.png "Grpc服务创建") 正常情况下会生成如下项目: ![Grpc项目](https://img.tnblog.net/arcimg/17726394069/16941694460149579f8df3ffe8b5c9dc.png "Grpc项目") 我遇到的错就会这样显示: ![错误情况视图](https://img.tnblog.net/arcimg/17726394069/97544bedb9ff4c4e86d0d325baf91cff.png "错误情况视图") 看见打开的GreeterService.cs文件应该可以看到是没有将`<Protobuf Include="Protos\greet.proto" GrpcServices="Server" />`加入配置中,但又想了哈,这个好像是默认生成没有生成成功,双击项目名称可以看到配置中其实存在`<Protobuf Include="Protos\greet.proto" GrpcServices="Server" />`代码,但是我们右击项目名称->点击在文件资源管理器中打开文件->点击obj->点击Debug->点击netcoreapp3.1。查看文件并没有生成有关greet的两个类;并且自动下载的包好像也有问题。 tn3# 解决包的下载问题 ![程序包源](https://img.tnblog.net/arcimg/17726394069/ac87ac511b0a41d887cb31d578734ac5.png "程序包源") 之前一直用的一直用的第一个源和第二个源,今天添加第三个源来进行包的下载,重新下载后包的确不再报错,但是`GreeterService.cs`里的报错依旧不减且还报出一个`protoc-gen-grpc:系统找不到指定的路径。--grpc_out`的一个奇奇怪怪的错,这个才是错的重头!!! tn3# protoc-gen-grpc:系统找不到指定的路径。 百度好多次,总结来说就是账户名是有特殊字符或者中文,我开始以为是VS2019的账户,进行了账户名更改,结果并没有什么变化,后面想了一哈报错路径找不到,那应该是计算机用户账户名的错咯!改了账户名依旧没有变化,看到C盘里有一个用户文件夹里面有一个以计算机用户名为名称的文件夹 ![C盘文件](https://img.tnblog.net/arcimg/17726394069/906c4e08b3d44605862b3d35cdbf29b5.png "C盘文件") 我尝试更改那个中文名称的文件夹,右击后却没有重命名选项,如果需要更改这个文件夹则需=>Win+R->输入regedit并点击确定->点击'计算机'->点击'HKEY_LOCAL_MACHINE'->点击'SOFTWARE'->点击'Microsoft'->点击'Windows NT'->点击'CurrentVersion'->点击'ProfileList'->单击'S-1-5-21-……'->在右边面板双击'ProfileImagePath'->将Users后面的特殊字符或者中文改成非特殊字符和中文。 然后重启计算机,就可以更改C盘里Users里的那个中文(特殊字符)账户名文件夹了。 ![注册表编辑器](https://img.tnblog.net/arcimg/17726394069/e0ac4e9959c746b0981b5a85bfe5b045.png "注册表编辑器") 更改了那个文件夹名称后再次重启计算机,打开之前创建的项目,就会发现没有报错且服务自动生成的两个有关greet的类也生成成功。
👈{{preArticle.title}}
👉{{nextArticle.title}}
评价
{{titleitem}}
{{titleitem}}
{{item.content}}
{{titleitem}}
{{titleitem}}
{{item.content}}