当前位置: 首页 > 知识库问答 >
问题:

scalapb如何从测试目录中的protobuf文件生成代码?

戚修雅
2023-03-14

我想从测试目录中的协议文件生成代码。

project/test/protobuf/myproto.proto

这行不通。

PB.targets in Test := Seq(
  scalapb.gen() -> (sourceManaged in Test).value
)

看起来scalapb只为main/protobuf目录中的proto生成文件。

共有1个答案

夹谷衡
2023-03-14

您需要为您的测试配置启用ScalaPB代码生成器。将此添加到build.sbt

Project.inConfig(Test)(sbtprotoc.ProtocPlugin.protobufConfigSettings)
 类似资料:
  • 我的问题与这个问题非常相似,只是针对maven和java。 我正在测试grpc,想把它变成一个简单的helloworld。proto位于test/proto文件夹中。 但是,该文件不会生成java文件(与/src/main/proto中的proto文件不同)。 所以我的问题是如何在测试文件夹中为proto生成代码?

  • 在阅读的API时,我错过了很多函数。首先,它建议使用for循环从stream转到。而且我忽略了一个事实,即不是。 如何在Java8中从生成?

  • 我有几个。具有proto2语法的proto文件。我试图使用protoc编译器自动生成C#类,但我得到了一个错误:“C#代码生成只支持proto3语法。 而不是手动更新每个。proto文件要符合proto3语法,是否有其他方法可以自动生成C#类?我对protobuf完全陌生,所以我知道这听起来像是一个奇怪的问题,因为编译器明确指出我必须遵循proto3语法-我只是想知道是否有办法让C类使用proto

  • 继续我的问题,我注意到仍然有一些文件没有创建。未创建的文件是为服务创建的。这些信息被完美地创造出来。 一个快速的例子来重现我的问题:克隆例如这个github回购。 所以我想知道,当proto文件被移动到test文件夹时,如何为服务创建java文件。

  • 在tests目录中有两个子目录,如tests/api和tests/sanity。注:测试/api已完成测试。希望找到输入的py。tests/api目录中的conf。注意:从测试/api运行测试工作正常。但从父目录测试运行测试,失败原因是:py。测试——测试选项=输入。conf用法:py。测试[选项][文件或目录][文件或目录][…] py.test:错误:没有这样的选项:--test_option

  • 我有一个Spring Boot and Gradle项目。我在gradle中定义了应用程序版本。Gradle可以从中读取的属性文件。我希望在应用程序代码中有这个数字,作为一个注入值。 我正在尝试做的是将版本号复制到application.properties或单独的version.properties文件中(两者都位于src/main/资源中)。实际上,我想将属性文件加载到Properties对象