我有一个这样的多项目设置:
lazy val kalosrpc = project
.settings(
libraryDependencies ++= Seq(
"io.grpc" % "grpc-netty" % scalapb.compiler.Version.grpcJavaVersion
)
).dependsOn(kalosgen)
lazy val kalosgen = project
.settings(
// settings not important
)
kalosgen
生成模型的主要类通过slick-codegen
并将其放置在:
kalosgen/target/scala-2.13/src_managed/main
在包中com.kalos.gen
。它还在编译时将 protobufs 编译为 scala 类,但该包按预期位于类路径中。
然后我可以将这些文件从kalosgen
into 导入kalosrpc
,intelliJ 不会抱怨,并且可以完全访问这些文件中定义的类型信息。因此,我运行kalosgen/compile
并按预期生成了包,但是当我跟进时,kalosrpc/compile
我得到:
object gen is not a member of package com.kalos
我试过更改包的名称,但它没有解决任何问题。根据此处提供的信息,我的项目配置似乎正确。