我正在开发一个利用Google Protobuf的Golang库。它通过使用由编译器插件protoc-gen-go自动生成的代码来实现。我正在使用Dep进行依赖关系管理。
生成的代码导出InstanceStatusUpdate
结构,字段Timestamp
的类型为github.com/golang/protobuf/ptypes/timestamp.Timestamp
:
type InstanceStatusUpdate struct {
EvaluationId string
VariationId string
AttemptNumber int32
Timestamp *google_protobuf.Timestamp
Stage string
Metadata string
JobId string
}
我遇到的问题是编写库代码以填充Timestamp字段会触发"github.com/golang/protobuf/ptypes"
的冗余自动导入,因为这是需要分配给Timestamp的类型。此冗余会导致此错误:
无法使用时间戳(类型 *" my_path的/供应商/ github.com / golang / protobuf的/ ptypes /时间戳" .Timestamp) 作为类型*" github.com/golang/protobuf/ptypes/timestamp" .Timestamp in 字段值
有什么想法吗?
库结构(只有一个供应商文件夹):
code_root
|
-lib
| |
| -go-statuses
-my_package /*Contains code that refers to the auto-generated code in
| go-statuses*/
|
-vendor