我正在尝试使用SBT程序集(0.14.0)来创建我的Scala项目的胖罐。
我的项目结构如下:
>top
> build.sbt
> api
> src
> main
> scala
> name
> Boot.scala
> other directories
我正在尝试将Boot设置为在jar中运行的主要方法。
我尝试过使用:
baseDirectory in (Compile,run) := file("api")
scalaSource in run := baseDirectory.value / "api"
scalaSource in Compile := baseDirectory(_ / "api")
mainClass in assembly := some("name.Boot")
jar构建成功但运行时我收到错误:
错误:无法找到或加载主类名称.Boot
答案 0 :(得分:1)
根据您发布的代码段,您可以尝试更改
mainClass in assembly := some("name.Boot")
到
mainClass in assembly := Some("name.Boot")
不抱怨的原因是小写some
引用了something else。
答案 1 :(得分:0)
mainClass
的文件路径不相关,只与Scala / Java中的命名空间相关。是你的主要对象
package name
object Boot {
def main ...
}