wechaty / grpc

gRPC Service & Protocol Buffers for Wechaty Puppet
https://wechaty.github.io/grpc/
Apache License 2.0
25 stars 22 forks source link

GRPC for C Sharp #73

Closed huan closed 4 years ago

huan commented 4 years ago

See:

Jesn commented 4 years ago

在生成grpc 服务的时候提示,是否因为我本地的google.protobuf 版本问题?

google/protobuf/wrappers.proto: File not found.
puppet/contact.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/contact.proto:63:3: "google.protobuf.StringValue" is not defined.
puppet/contact.proto:66:3: "google.protobuf.StringValue" is not defined.
puppet/contact.proto:72:3: "google.protobuf.StringValue" is not defined.
puppet/contact.proto:75:3: "google.protobuf.StringValue" is not defined.
google/protobuf/wrappers.proto: File not found.
puppet/friendship.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/friendship.proto:34:3: "google.protobuf.StringValue" is not defined.
puppet/friendship.proto:51:3: "google.protobuf.StringValue" is not defined.
puppet/friendship.proto:59:3: "google.protobuf.StringValue" is not defined.
google/protobuf/wrappers.proto: File not found.
puppet/message.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/message.proto:92:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:100:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:109:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:117:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:125:3: "google.protobuf.StringValue" is not defined.
google/protobuf/wrappers.proto: File not found.
puppet/room.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/room.proto:60:3: "google.protobuf.StringValue" is not defined.
puppet/room.proto:63:3: "google.protobuf.StringValue" is not defined.
puppet/room.proto:75:3: "google.protobuf.StringValue" is not defined.
puppet/room.proto:78:3: "google.protobuf.StringValue" is not defined.
google/protobuf/wrappers.proto: File not found.
puppet/room_invitation.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/room_invitation.proto:11:3: "google.protobuf.StringValue" is not defined.
google/protobuf/wrappers.proto: File not found.
puppet/tag.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/tag.proto:27:3: "google.protobuf.StringValue" is not defined.
google/protobuf/wrappers.proto: File not found.
puppet/contact.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/contact.proto:63:3: "google.protobuf.StringValue" is not defined.
puppet/contact.proto:66:3: "google.protobuf.StringValue" is not defined.
puppet/contact.proto:72:3: "google.protobuf.StringValue" is not defined.
puppet/contact.proto:75:3: "google.protobuf.StringValue" is not defined.
puppet/friendship.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/friendship.proto:34:3: "google.protobuf.StringValue" is not defined.
puppet/friendship.proto:51:3: "google.protobuf.StringValue" is not defined.
puppet/friendship.proto:59:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/message.proto:92:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:100:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:109:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:117:3: "google.protobuf.StringValue" is not defined.
puppet/message.proto:125:3: "google.protobuf.StringValue" is not defined.
puppet/room.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/room.proto:60:3: "google.protobuf.StringValue" is not defined.
puppet/room.proto:63:3: "google.protobuf.StringValue" is not defined.
puppet/room.proto:75:3: "google.protobuf.StringValue" is not defined.
puppet/room.proto:78:3: "google.protobuf.StringValue" is not defined.
puppet/room_invitation.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/room_invitation.proto:11:3: "google.protobuf.StringValue" is not defined.
puppet/tag.proto:7:1: Import "google/protobuf/wrappers.proto" was not found or had errors.
puppet/tag.proto:27:3: "google.protobuf.StringValue" is not defined.
puppet.proto:19:1: Import "puppet/contact.proto" was not found or had errors.
puppet.proto:21:1: Import "puppet/friendship.proto" was not found or had errors.
puppet.proto:22:1: Import "puppet/message.proto" was not found or had errors.
puppet.proto:23:1: Import "puppet/room.proto" was not found or had errors.
puppet.proto:24:1: Import "puppet/room_invitation.proto" was not found or had errors.
puppet.proto:26:1: Import "puppet/tag.proto" was not found or had errors.
puppet.proto:53:26: "puppet.ContactSelfQRCodeRequest" is resolved to "wechaty.puppet.ContactSelfQRCodeRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactSelfQRCodeRequest") to start from the outermost scope.
puppet.proto:53:68: "puppet.ContactSelfQRCodeResponse" is resolved to "wechaty.puppet.ContactSelfQRCodeResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactSelfQRCodeResponse") to start from the outermost scope.
puppet.proto:54:24: "puppet.ContactSelfNameRequest" is resolved to "wechaty.puppet.ContactSelfNameRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactSelfNameRequest") to start from the outermost scope.
puppet.proto:54:64: "puppet.ContactSelfNameResponse" is resolved to "wechaty.puppet.ContactSelfNameResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactSelfNameResponse") to start from the outermost scope.
puppet.proto:55:29: "puppet.ContactSelfSignatureRequest" is resolved to "wechaty.puppet.ContactSelfSignatureRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactSelfSignatureRequest") to start from the outermost scope.
puppet.proto:55:74: "puppet.ContactSelfSignatureResponse" is resolved to "wechaty.puppet.ContactSelfSignatureResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactSelfSignatureResponse") to start from the outermost scope.
puppet.proto:62:23: "puppet.ContactPayloadRequest" is resolved to "wechaty.puppet.ContactPayloadRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactPayloadRequest") to start from the outermost scope.
puppet.proto:62:63: "puppet.ContactPayloadResponse" is resolved to "wechaty.puppet.ContactPayloadResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactPayloadResponse") to start from the outermost scope.
puppet.proto:64:21: "puppet.ContactAliasRequest" is resolved to "wechaty.puppet.ContactAliasRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactAliasRequest") to start from the outermost scope.
puppet.proto:64:58: "puppet.ContactAliasResponse" is resolved to "wechaty.puppet.ContactAliasResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactAliasResponse") to start from the outermost scope.
puppet.proto:65:22: "puppet.ContactAvatarRequest" is resolved to "wechaty.puppet.ContactAvatarRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactAvatarRequest") to start from the outermost scope.
puppet.proto:65:60: "puppet.ContactAvatarResponse" is resolved to "wechaty.puppet.ContactAvatarResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactAvatarResponse") to start from the outermost scope.
puppet.proto:67:20: "puppet.ContactListRequest" is resolved to "wechaty.puppet.ContactListRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactListRequest") to start from the outermost scope.
puppet.proto:67:63: "puppet.ContactListResponse" is resolved to "wechaty.puppet.ContactListResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.ContactListResponse") to start from the outermost scope.
puppet.proto:74:26: "puppet.FriendshipPayloadRequest" is resolved to "wechaty.puppet.FriendshipPayloadRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipPayloadRequest") to start from the outermost scope.
puppet.proto:74:69: "puppet.FriendshipPayloadResponse" is resolved to "wechaty.puppet.FriendshipPayloadResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipPayloadResponse") to start from the outermost scope.
puppet.proto:76:30: "puppet.FriendshipSearchPhoneRequest" is resolved to "wechaty.puppet.FriendshipSearchPhoneRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipSearchPhoneRequest") to start from the outermost scope.
puppet.proto:76:76: "puppet.FriendshipSearchPhoneResponse" is resolved to "wechaty.puppet.FriendshipSearchPhoneResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipSearchPhoneResponse") to start from the outermost scope.
puppet.proto:77:31: "puppet.FriendshipSearchWeixinRequest" is resolved to "wechaty.puppet.FriendshipSearchWeixinRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipSearchWeixinRequest") to start from the outermost scope.
puppet.proto:77:78: "puppet.FriendshipSearchWeixinResponse" is resolved to "wechaty.puppet.FriendshipSearchWeixinResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipSearchWeixinResponse") to start from the outermost scope.
puppet.proto:79:22: "puppet.FriendshipAddRequest" is resolved to "wechaty.puppet.FriendshipAddRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipAddRequest") to start from the outermost scope.
puppet.proto:79:60: "puppet.FriendshipAddResponse" is resolved to "wechaty.puppet.FriendshipAddResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipAddResponse") to start from the outermost scope.
puppet.proto:80:25: "puppet.FriendshipAcceptRequest" is resolved to "wechaty.puppet.FriendshipAcceptRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipAcceptRequest") to start from the outermost scope.
puppet.proto:80:66: "puppet.FriendshipAcceptResponse" is resolved to "wechaty.puppet.FriendshipAcceptResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.FriendshipAcceptResponse") to start from the outermost scope.
puppet.proto:87:23: "puppet.MessagePayloadRequest" is resolved to "wechaty.puppet.MessagePayloadRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessagePayloadRequest") to start from the outermost scope.
puppet.proto:87:63: "puppet.MessagePayloadResponse" is resolved to "wechaty.puppet.MessagePayloadResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessagePayloadResponse") to start from the outermost scope.
puppet.proto:89:23: "puppet.MessageContactRequest" is resolved to "wechaty.puppet.MessageContactRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageContactRequest") to start from the outermost scope.
puppet.proto:89:62: "puppet.MessageContactResponse" is resolved to "wechaty.puppet.MessageContactResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageContactResponse") to start from the outermost scope.
puppet.proto:90:20: "puppet.MessageFileRequest" is resolved to "wechaty.puppet.MessageFileRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageFileRequest") to start from the outermost scope.
puppet.proto:90:56: "puppet.MessageFileResponse" is resolved to "wechaty.puppet.MessageFileResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageFileResponse") to start from the outermost scope.
puppet.proto:91:21: "puppet.MessageImageRequest" is resolved to "wechaty.puppet.MessageImageRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageImageRequest") to start from the outermost scope.
puppet.proto:91:58: "puppet.MessageImageResponse" is resolved to "wechaty.puppet.MessageImageResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageImageResponse") to start from the outermost scope.
puppet.proto:92:27: "puppet.MessageMiniProgramRequest" is resolved to "wechaty.puppet.MessageMiniProgramRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageMiniProgramRequest") to start from the outermost scope.
puppet.proto:92:70: "puppet.MessageMiniProgramResponse" is resolved to "wechaty.puppet.MessageMiniProgramResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageMiniProgramResponse") to start from the outermost scope.
puppet.proto:93:19: "puppet.MessageUrlRequest" is resolved to "wechaty.puppet.MessageUrlRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageUrlRequest") to start from the outermost scope.
puppet.proto:93:54: "puppet.MessageUrlResponse" is resolved to "wechaty.puppet.MessageUrlResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageUrlResponse") to start from the outermost scope.
puppet.proto:95:27: "puppet.MessageSendContactRequest" is resolved to "wechaty.puppet.MessageSendContactRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendContactRequest") to start from the outermost scope.
puppet.proto:95:70: "puppet.MessageSendContactResponse" is resolved to "wechaty.puppet.MessageSendContactResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendContactResponse") to start from the outermost scope.
puppet.proto:96:24: "puppet.MessageSendFileRequest" is resolved to "wechaty.puppet.MessageSendFileRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendFileRequest") to start from the outermost scope.
puppet.proto:96:64: "puppet.MessageSendFileResponse" is resolved to "wechaty.puppet.MessageSendFileResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendFileResponse") to start from the outermost scope.
puppet.proto:97:24: "puppet.MessageSendTextRequest" is resolved to "wechaty.puppet.MessageSendTextRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendTextRequest") to start from the outermost scope.
puppet.proto:97:64: "puppet.MessageSendTextResponse" is resolved to "wechaty.puppet.MessageSendTextResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendTextResponse") to start from the outermost scope.
puppet.proto:98:31: "puppet.MessageSendMiniProgramRequest" is resolved to "wechaty.puppet.MessageSendMiniProgramRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendMiniProgramRequest") to start from the outermost scope.
puppet.proto:98:78: "puppet.MessageSendMiniProgramResponse" is resolved to "wechaty.puppet.MessageSendMiniProgramResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendMiniProgramResponse") to start from the outermost scope.
puppet.proto:99:23: "puppet.MessageSendUrlRequest" is resolved to "wechaty.puppet.MessageSendUrlRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendUrlRequest") to start from the outermost scope.
puppet.proto:99:62: "puppet.MessageSendUrlResponse" is resolved to "wechaty.puppet.MessageSendUrlResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageSendUrlResponse") to start from the outermost scope.
puppet.proto:101:22: "puppet.MessageRecallRequest" is resolved to "wechaty.puppet.MessageRecallRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageRecallRequest") to start from the outermost scope.
puppet.proto:101:60: "puppet.MessageRecallResponse" is resolved to "wechaty.puppet.MessageRecallResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.MessageRecallResponse") to start from the outermost scope.
puppet.proto:108:20: "puppet.RoomPayloadRequest" is resolved to "wechaty.puppet.RoomPayloadRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomPayloadRequest") to start from the outermost scope.
puppet.proto:108:57: "puppet.RoomPayloadResponse" is resolved to "wechaty.puppet.RoomPayloadResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomPayloadResponse") to start from the outermost scope.
puppet.proto:110:17: "puppet.RoomListRequest" is resolved to "wechaty.puppet.RoomListRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomListRequest") to start from the outermost scope.
puppet.proto:110:57: "puppet.RoomListResponse" is resolved to "wechaty.puppet.RoomListResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomListResponse") to start from the outermost scope.
puppet.proto:112:16: "puppet.RoomAddRequest" is resolved to "wechaty.puppet.RoomAddRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomAddRequest") to start from the outermost scope.
puppet.proto:112:48: "puppet.RoomAddResponse" is resolved to "wechaty.puppet.RoomAddResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomAddResponse") to start from the outermost scope.
puppet.proto:113:19: "puppet.RoomAvatarRequest" is resolved to "wechaty.puppet.RoomAvatarRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomAvatarRequest") to start from the outermost scope.
puppet.proto:113:54: "puppet.RoomAvatarResponse" is resolved to "wechaty.puppet.RoomAvatarResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomAvatarResponse") to start from the outermost scope.
puppet.proto:114:19: "puppet.RoomCreateRequest" is resolved to "wechaty.puppet.RoomCreateRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomCreateRequest") to start from the outermost scope.
puppet.proto:114:54: "puppet.RoomCreateResponse" is resolved to "wechaty.puppet.RoomCreateResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomCreateResponse") to start from the outermost scope.
puppet.proto:115:16: "puppet.RoomDelRequest" is resolved to "wechaty.puppet.RoomDelRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomDelRequest") to start from the outermost scope.
puppet.proto:115:48: "puppet.RoomDelResponse" is resolved to "wechaty.puppet.RoomDelResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomDelResponse") to start from the outermost scope.
puppet.proto:116:17: "puppet.RoomQuitRequest" is resolved to "wechaty.puppet.RoomQuitRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomQuitRequest") to start from the outermost scope.
puppet.proto:116:50: "puppet.RoomQuitResponse" is resolved to "wechaty.puppet.RoomQuitResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomQuitResponse") to start from the outermost scope.
puppet.proto:118:18: "puppet.RoomTopicRequest" is resolved to "wechaty.puppet.RoomTopicRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomTopicRequest") to start from the outermost scope.
puppet.proto:118:52: "puppet.RoomTopicResponse" is resolved to "wechaty.puppet.RoomTopicResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomTopicResponse") to start from the outermost scope.
puppet.proto:119:19: "puppet.RoomQRCodeRequest" is resolved to "wechaty.puppet.RoomQRCodeRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomQRCodeRequest") to start from the outermost scope.
puppet.proto:119:54: "puppet.RoomQRCodeResponse" is resolved to "wechaty.puppet.RoomQRCodeResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomQRCodeResponse") to start from the outermost scope.
puppet.proto:120:21: "puppet.RoomAnnounceRequest" is resolved to "wechaty.puppet.RoomAnnounceRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomAnnounceRequest") to start from the outermost scope.
puppet.proto:120:58: "puppet.RoomAnnounceResponse" is resolved to "wechaty.puppet.RoomAnnounceResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomAnnounceResponse") to start from the outermost scope.
puppet.proto:136:30: "puppet.RoomInvitationPayloadRequest" is resolved to "wechaty.puppet.RoomInvitationPayloadRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomInvitationPayloadRequest") to start from the outermost scope.
puppet.proto:136:77: "puppet.RoomInvitationPayloadResponse" is resolved to "wechaty.puppet.RoomInvitationPayloadResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomInvitationPayloadResponse") to start from the outermost scope.
puppet.proto:137:29: "puppet.RoomInvitationAcceptRequest" is resolved to "wechaty.puppet.RoomInvitationAcceptRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomInvitationAcceptRequest") to start from the outermost scope.
puppet.proto:137:74: "puppet.RoomInvitationAcceptResponse" is resolved to "wechaty.puppet.RoomInvitationAcceptResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.RoomInvitationAcceptResponse") to start from the outermost scope.
puppet.proto:144:22: "puppet.TagContactAddRequest" is resolved to "wechaty.puppet.TagContactAddRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactAddRequest") to start from the outermost scope.
puppet.proto:144:60: "puppet.TagContactAddResponse" is resolved to "wechaty.puppet.TagContactAddResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactAddResponse") to start from the outermost scope.
puppet.proto:145:25: "puppet.TagContactRemoveRequest" is resolved to "wechaty.puppet.TagContactRemoveRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactRemoveRequest") to start from the outermost scope.
puppet.proto:145:66: "puppet.TagContactRemoveResponse" is resolved to "wechaty.puppet.TagContactRemoveResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactRemoveResponse") to start from the outermost scope.
puppet.proto:146:25: "puppet.TagContactDeleteRequest" is resolved to "wechaty.puppet.TagContactDeleteRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactDeleteRequest") to start from the outermost scope.
puppet.proto:146:66: "puppet.TagContactDeleteResponse" is resolved to "wechaty.puppet.TagContactDeleteResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactDeleteResponse") to start from the outermost scope.
puppet.proto:147:23: "puppet.TagContactListRequest" is resolved to "wechaty.puppet.TagContactListRequest", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactListRequest") to start from the outermost scope.
puppet.proto:147:62: "puppet.TagContactListResponse" is resolved to "wechaty.puppet.TagContactListResponse", which is not defined. The innermost scope is searched first in name resolution. Consider using a leading '.'(i.e., ".puppet.TagContactListResponse") to start from the outermost scope.
huan commented 4 years ago

It seems that you did not install the google.protobuf in your local development environment.

Please install google.protobuf before you continue, which I believe could fix your issue.

Jesn commented 4 years ago

本地已经安装过google.protobuf了, 本地创建的一个grpc demo 可以正常build

Jesn commented 4 years ago

之前一直使用nuget包中grpc.tools 的最新版本2.30.0生成报错,降级到2.27.0生成不报错,但是缺少google proto相关文件,最终从grpc 下载官网的 protoc-3.12.3-win64 生成成功

huan commented 4 years ago

Congratulations!

huan commented 4 years ago

Close this issue because #84 has been merged!