- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我在包含 google/protobuf/timestamp.proto 时遇到问题众所周知的类型,使用时 dep .
我得到一个错误:google/protobuf/timestamp.proto: File not found
服务.proto:
syntax = "proto3";
import "google/protobuf/timestamp.proto";
package com.rynop.platform;
option go_package = "rpc";
service PlatformService {
rpc Test(EmptyMessage) returns (EmptyMessage);
}
message EmptyMessage { }
message A {
string summary = 1;
google.protobuf.Timestamp start = 2;
}
message B {
repeated A foos = 1;
}
安装包含时间戳 .proto def 的包:
dep ensure -add github.com/golang/protobuf/ptypes/timestamp
运行 protoc
并得到错误:
build/bin/protoc -Ivendor -I. --twirp_typescript_out=version=v6:./clients/ts-json/ rpc/service.proto
google/protobuf/timestamp.proto: File not found.
存在包含时间戳的 .proto 定义的目录:
file vendor/github.com/golang/protobuf/ptypes/timestamp/timestamp.proto
vendor/github.com/golang/protobuf/ptypes/timestamp/timestamp.proto: ASCII text
我正在本地安装 protoc,因为我不想将 protoc 版本锁定/绑定(bind)到这个项目:
# fetch the protoc compiler
OS_NAME=$(shell uname -s)
ifeq ($(OS_NAME),Darwin)
PROTOC_URL=https://github.com/google/protobuf/releases/download/v3.7.1/protoc-3.7.1-osx-x86_64.zip
endif
ifeq ($(OS_NAME),Linux)
PROTOC_URL=https://github.com/google/protobuf/releases/download/v3.7.1/protoc-3.7.1-linux-x86_64.zip
endif
build/protoc build/bin/protoc:
mkdir -p build/protoc/bin build/bin
cd build/protoc && curl -L -o protoc.zip $(PROTOC_URL) && \
unzip protoc.zip && mv bin/protoc ../bin/protoc
我做错了什么?
最佳答案
您遇到的 protoc
错误与您的 INCLUDE
路径有关。
当您安装 protoc
编译器(例如 /usr/local/bin/protoc
)时,它会获取 google 的标准原型(prototype)定义,例如 timestamp .proto
- 这些需要添加到您的 INCLUDE
路径中的某处(在 MacOS/Linux 上可以使用 /usr/local/include
)。注意:protoc header 应该包含在 protoc 编译器中。
因此您的原型(prototype)导入文件通常位于此处:
/usr/local/include/google/protobuf/timestamp.proto
当 protoc
编译器看到像这样的导入时,将引用此路径:
import "google/protobuf/timestamp.proto";
因此请检查您的 INCLUDE
路径并确保正确安装了 protoc
header 。
关于go - 使用 dep 时如何正确包含协议(protocol)的 golang protobuf/ptypes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56551570/
我使用 go dep 工具版本 v0.4.1,现在当我运行 dep init 时它会按预期创建 2 个文件,当我打开 gopkg.lock 我发现例如以下内容 [[projects]] name
运行 dep ensure 后,go-chi 缺少中间件子包。 project-backend | main.go:8:2: cannot find package "github.com/
我正在查看新架构组件的 google 示例,在那里我找到了如下代码: dependencies { // Support libraries implementation deps.s
我有一个包含 2 个项目的 Visual Studio 解决方案,都在 .Net Core 3.1 中 XYZ.Api, Xyz.ApiTests ApiTests 是一个用于集成测试的 xUnit
我正在使用 Rails 3.1 beta 以及 Ruby 1.9.2 和 rake 0.9.2,并且我编写了一堆 rake 任务。这是一个例子: namespace :data do desc "
请遵循以下菜单顺序: 文件->新建->项目-> ASP> .NET核心Web应用程序(.Net Framework) 构建->构建解决方案 得到这个错误: 错误C:\ Users \ Sam \ Do
我正在考虑尝试一些 jit 编译(只是为了学习),因为我在家里运行所有主要的三个(windows、os x、linux),所以让它跨平台工作会很好。 考虑到这一点,我想知道是否有任何方法可以摆脱使用虚
是否可以检查是否启用了数据执行保护? 有没有和这个CMD命令一样的功能 wmic OS Get DataExecutionPrevention_SupportPolicy 然后返回这样的东西? 0 –
当运行我们的一个软件时,测试人员面临着 Windows 的数据执行阻止对话框。 我们尝试在开发人员计算机上重现这种情况以进行调试:但没有成功。 有谁知道如何找到可能导致 DEP 保护终止应用程序的原因
我们有一个应用程序,其中堆的某些部分作为汇编指令执行/用于测试目的 - 我们将程序下载到 PLC,但允许用户通过在下载到 PLC 之前执行他们的代码来模拟运行他们的应用程序。之前我们总是从存储指令的堆
我已经使用以下命令安装了 httprouter 包 dep ensure -add github.com/julienschmidt/httprouter vendor └
我正在尝试使用 DerivingVia为具有函数依赖关系的多参数类型类削减实例定义的样板。 我有这些类型和类: {-# LANGUAGE FunctionalDependencies #-} {-#
我有一个查询,可以有效地返回特定标签的依赖项的所有标签。我想知道这些依赖项的实际文件路径。 $ bazel query 'deps(//foo:bar)' --noimplicit_deps //ba
我们正在使用 rebar 为我们的项目拉取依赖项,其中许多来自 github。我们的配置看起来像: {deps, [ {cowboy, "", {git, "git://github.
在客户端我有这个: var Coll1 = new Meteor.Collection('myCollection1'); var Coll2 = new Meteor.Collection('myC
我需要确定 Windows DEP 是否被禁用,是否设置为基本的 Windows 程序和服务或除我选择的程序之外的所有程序。 我一直在寻找一种方法,但没有成功。有没有办法做到这一点?用 C# 开发。
我想在我的 elixir 应用程序的测试中使用我的依赖项之一的测试目录中的模块。我想知道是否有办法做到这一点。谢谢。 我试过import ,这给了我一个编译错误 elixir module is n
我正在使用 kubebuilder创建 Kubernetes 运营商项目。运行 quickstart guide 中描述的项目初始化命令后 kubebuilder init --domain k8s.
我刚刚开始使用 cloudstack,想要让开发环境运行起来。我安装了 Maven,并使用 Eclipse。我一直在关注this指南,这似乎有点过时,但我一直无法找到有关在 Eclipse 中实现此操
谁能告诉我lein deps是如何工作的?如果lein在~/.m2中找到项目所需版本的依赖项,lein仍然会再次下载相同的包? 最佳答案 让我们将其分为几个问题,我将尝试对每个问题进行简要介绍: 有人
我是一名优秀的程序员,十分优秀!