草庐IT

aapt2-proto

全部标签

go - 在 proto3 文件中为 Golang 和 C# 使用 IP 字段(IPV4 或 IPV6)的更好方法是什么

我想在proto3消息中使用IP字段。我应该使用proto3中的哪种类型来表示相同的内容。该字段将由Golang和C#实现使用。我应该使用字符串吗?或IPV4的fixed32和IPV6的字节数?messagexyz{stringip_addr=1;}或messagexyz{oneofip_addr{fixed32v4=1;bytesv6=2;}如果是第二个,那么在Golang实现中如何编码呢?例如,我应该先构造一个具有有效IP地址的字符串,然后将其转换为fixed32格式还是如何? 最佳答案 如果您在这里没有性能限制,我会使用字符串

go - 在 proto 消息中声明一个字段标签

我刚刚开始使用protobuf进行Go编程,现在我需要验证结构中的数据。我找到了govalidator,这似乎完美地满足了我的需要。它确实根据字段标签验证结构,比如typeContactstruct{firstNamestring`valid:"alpha,required"`lastNamestring`valid:"alpha,required"`emailstring`valid:"email,required"`}jdoe:=&Contact{firstName:"John",lastName:"Doe",email:"jdoe@mail.com"}ok,err=govalid

go - 混淆从 proto 文件创建 swagger.json 文件

我已经为我打算生成的REST网络服务创建了一个包含所有必要消息和rpc函数的原型(prototype)文件。使用protoc-gen-swagger插件,我设法将该proto文件编译成swagger.json文件,一切看起来都很好,除了两件事,我似乎无法解决。swagger.json文件中的所有定义都以我的原型(prototype)文件包的名称为前缀。有办法摆脱这个吗?我消息的所有字段都是“可选的”。它们没有明确指定,但也没有指定为“必需”,根据定义,它们是可选的。Proto3不再支持必需/可选/重复,但即使我使用Proto2并添加这些关键字,它似乎也不会影响swagger.json输

go - 未实现的 desc = 未知服务 protos.ChaincodeSupport

当我启动orderer、peer节点,然后我启动example01.go来实例化链码,并指定:peer.address192.168.120.189:7051chaincode.id.namesimple-token:1.0.0example01.go的主要代码是:funcmain(){viper.Set("chaincode.id.name","simple-token:1.0.0")err:=shim.Start(new(SimpleChaincode))iferr!=nil{fmt.Printf("ErrorstartingSimplechaincode:%s",err)}}在方

go - 文件不在使用 proto_path 指定的任何路径中

我正在测试从另一个目录导入.proto文件。$GOPATH/src/A/A.protosyntax="proto3";packageA;messageSomeMsg{stringmsg=2;int64id=3;}$GOPATH/src/B/B.protosyntax="proto3";packageB;import"A/A.proto";messageMsg{SomeMsgs=1;}我这样做:在文件夹A中:protocA.proto--go_out=.然后在文件夹B中:protocB.proto--go_out=.--proto_path=$GOPATH/但是我会得到这个错误:B.pr

json - "google/protobuf/struct.proto"是通过 GRPC 发送动态 JSON 的最佳方式吗?

我写了一个简单的GRPC服务器和一个调用服务器的客户端(都在Go中)。请告诉我使用golang/protobuf/struct是否是使用GRPC发送动态JSON的最佳方式。在下面的示例中,我之前将Details创建为map[string]interface{}并将其序列化。然后我将它作为bytes在protoMessage中发送,并在服务器端反序列化消息。这是最好/最有效的方法还是我应该在我的原型(prototype)文件中将Details定义为一个结构?下面是User.proto文件syntax="proto3";packagemessages;import"google/proto

go - 未定义 : proto. ProtoPackageIsVersion3

我得到:../.../...pb.go:21:11:undefined:proto.ProtoPackageIsVersion3我想要版本2我从https://github.com/google/protobuf/releases$protoc--version安装了protoc给出了libprotoc3.6.0。我还从apt安装了golang-goprotobuf-dev。问题:protoc(protobuffer编译器总是编译到Proto3版本?)需要什么额外的支持?如何获得可以编译为Proto2的编译器?我注意到在一个系统中libproto3.6.1编译为proto2,我不明白这

Android studio 2.1.2 gradle aapt语法错误: Unterminated quoted string

我正在尝试在32位linuxMint17.3上运行AndroidStudio2.1.2。AndroidStudio是全新安装的。当我重建一个项目或创建一个新项目时,我在Gradle控制台中收到类似这样的错误:AAPTerr(Facadefor19314581):/home/user/Android/Sdk/build-tools/24.0.1/aapt:2:/home/user/Android/Sdk/build-tools/24.0.1/aapt:Syntaxerror:UnterminatedquotedstringAapt在build-tools目录中设置为可执行文件。我已经设置

android - 错误: duplicate value for resource 'attr/orientation' with config '' . aapt.v2.Aapt2Exception:Android资源编译失败

我遇到了这个编译错误!我在stackoverflow上检查了类似的问题,但所有这些问题都是关于不同的错误而不是“attr/orientation”和“配置”,但它们对我的问题不起作用!我正在使用androidx库,kotlin,Gradle4.10.1,我做了这些步骤,但仍然没有结果:1-清理项目2-重建3-使缓存无效/重新启动4-在文件夹中创建另一个attrs.xml文件:res->values-v215-还有很多其他方式...但他们都失败了!有什么解决办法吗? 最佳答案 我发现了问题,这是一个错误,我向Google(b.andr

android - Eclipse 和 Android SDK 问题 "aapt.exe has stopped"

我在使用aapt.exe的Windows764位计算机上遇到问题。它抛出以下错误:aapt.exe已停止工作它与项目无关,因为我尝试了多个项目,它似乎也发生在Eclipse中的任何工作区。新项目或旧项目在构建和运行我的应用程序时总是失败。我正在使用最新的JDK-6和最新的AndroidSDK22.0.1,以及构建工具和平台工具。删除整个SDK和Eclipse并解压缩并重新设置似乎也不能解决它。有什么想法吗? 最佳答案 从@+id这样的样式中删除id然后再次构建你会成功...@+id/calender