某个sbt子项目有自己的project
目录吗?或者只有根项目可以使用.scala帮助文件来构建目录?以下是我目前的构建结构。 /my-project/sub-projects/sub-project-1/build.sbt
无法访问/my-project/sub-projects/sub-project-1/SubProjectHelper.scala
中定义的对象。
/my-project
build.sbt
/projects
Helper.scala
sub-projects
sub-project-1
build.sbt
/projects
SubProjectHelper.scala
更新 sub-project-1 / build.sbt
中的以下sbt定义lazy val localhost = (project in file(".")).settings (
name := """localhost""",
version := Common.version,
scalaVersion := Common.scalaVersion,
libraryDependencies ++= Common.dependencies,
libraryDependencies ++= Localhost.dependencies
)
失败并出现以下错误
libraryDependencies ++= Localhost.dependencies
^
sbt.compiler.EvalException: Type error in expression
at sbt.compiler.Eval.checkError(Eval.scala:384)
at sbt.compiler.Eval.compileAndLoad(Eval.scala:183)
at sbt.compiler.Eval.evalCommon(Eval.scala:152)
at sbt.compiler.Eval.evalDefinitions(Eval.scala:122)
at sbt.EvaluateConfigurations$.evaluateDefinitions(EvaluateConfigurations.scala:271)
at sbt.EvaluateConfigurations$.evaluateSbtFile(EvaluateConfigurations.scala:109)
at sbt.Load$.sbt$Load$$loadSettingsFile$1(Load.scala:712)
Common在/my-project/projects/Common.scala中定义,没有任何问题。但是localhost是在/my-project/sub-projects/sub-project-1/projects/SubProjectHelper.scala中定义的,未在子项目-1 build.sb中正确解析
答案 0 :(得分:0)
是的,他们可以,您甚至不需要sub-projects
目录,只需将sub-project-1
放在my-project
目录中。
答案 1 :(得分:0)
通常(至少这是 scala / scala-seed.g8 最终的结果)项目子目录不会像你的目录那样以额外的 s 结束结构
您应该将projects
重命名为project
。