我创建了一个带有一些子项目的sbt(v.0.13.8)项目(我有充分的理由,请参阅Apache Spark and gRPC)。
我想要的是
为此,我创建了一个根构建文件(build.sbt),它引用了一个子项目(grpc):
->cdc(...)
在grpc / build.sbt中我写
<?php
$CDCService = new QuickBooks_IPP_Service_ChangeDataCapture();
// What types of objects do you want to get?
$objects = array(
'Payment',
'Invoice',
);
// The date they should have been updated after
$timestamp = QuickBooks_Utilities::datetime($datetime_you_last_called_cdc_method);
$cdc = $CDCService->cdc($Context, $realm,
$objects,
$timestamp);
// You would cache all the stuff you get back here
print_r($cdc);
我曾希望通过这样做,我可以生成一个jar文件,将其放入根项目的lib文件夹中并从那里使用它。
到目前为止,遗憾的是,组装任务无法识别,我收到以下错误:
lazy val root = project.
settings(commonSettings: _*).
aggregate(grpc).
dependsOn(grpc % "compile->assembly")
我在grpc / project / assembly.sbt中添加了必要的assemblyOutputPath in assembly := sbt.file("../lib/grpc-assembly-0.1-SNAPSHOT.jar")
命令,如果进入文件夹grpc并执行sbt.ResolveException: unresolved dependency:
io.tmp#grpc_2.10;0.1.0: configuration not found in
io.tmp#grpc_2.10;0.1.0: 'assembly'.
It was required from io.tmp#root_2.10;0.1.0 compile
,它就可以了。同样,我在顶层项目文件夹(project / assembly.sbt)中也有相同的文件。为什么它没有在这里找到装配任务?我误解了什么吗?你在我尝试做的事情中看到了问题吗?