对象不是包的成员
object is not a member of package
我正在尝试使用 scalaPB 的 official example. The scala code is found on their gitHub
来实现简单的服务器-客户端应用程序
但是,当我尝试 运行 它时,当我尝试使用 import io.grpc.examples.helloworld.helloworld.{foo}
.
导入任何内容时,我总是收到错误 object helloworld is not a member of package io.grpc.examples.helloworld
我的 build.sbt 文件:
name := "Distributed sorting"
version := "0.1"
scalaVersion := "2.13.7"
libraryDependencies ++= Seq(
"io.grpc" % "grpc-netty" % scalapb.compiler.Version.grpcJavaVersion,
"com.thesamet.scalapb" %% "scalapb-runtime-grpc" % scalapb.compiler.Version.scalapbVersion
)
Compile / PB.targets := Seq(
scalapb.gen() -> (Compile / sourceManaged).value / "scalapb"
)
我的文件如下所示:
├── build.sbt
├── project
│ ├── build.properties
│ ├── scalapb.sbt
│ └── target
├── ...
└── src/main
├── protobuf
├── hello.proto
└── scala/io/grpc/examples/helloworld
├── HelloWorldClient.scala
└── HelloWorldServer.scala
首先,我推荐使用 Akka gRPC rather than using ScalaPB directly. The documentation is pretty clear and there is a giter8 config,它可用于使用 sbt new
创建示例项目。
其次,gitHub中的代码看起来不像是官方的示例代码。它说它已“从 grpc java 翻译而来”,这可能不是您想要的。
最后,关于您遇到的具体问题,scalaPB 生成的存根位于一个包中,其名称在 proto
文件中给出。示例文件有
package com.example.protos
因此存根将位于 com.example.protos.Greeter
。
我正在尝试使用 scalaPB 的 official example. The scala code is found on their gitHub
来实现简单的服务器-客户端应用程序但是,当我尝试 运行 它时,当我尝试使用 import io.grpc.examples.helloworld.helloworld.{foo}
.
object helloworld is not a member of package io.grpc.examples.helloworld
我的 build.sbt 文件:
name := "Distributed sorting"
version := "0.1"
scalaVersion := "2.13.7"
libraryDependencies ++= Seq(
"io.grpc" % "grpc-netty" % scalapb.compiler.Version.grpcJavaVersion,
"com.thesamet.scalapb" %% "scalapb-runtime-grpc" % scalapb.compiler.Version.scalapbVersion
)
Compile / PB.targets := Seq(
scalapb.gen() -> (Compile / sourceManaged).value / "scalapb"
)
我的文件如下所示:
├── build.sbt
├── project
│ ├── build.properties
│ ├── scalapb.sbt
│ └── target
├── ...
└── src/main
├── protobuf
├── hello.proto
└── scala/io/grpc/examples/helloworld
├── HelloWorldClient.scala
└── HelloWorldServer.scala
首先,我推荐使用 Akka gRPC rather than using ScalaPB directly. The documentation is pretty clear and there is a giter8 config,它可用于使用 sbt new
创建示例项目。
其次,gitHub中的代码看起来不像是官方的示例代码。它说它已“从 grpc java 翻译而来”,这可能不是您想要的。
最后,关于您遇到的具体问题,scalaPB 生成的存根位于一个包中,其名称在 proto
文件中给出。示例文件有
package com.example.protos
因此存根将位于 com.example.protos.Greeter
。