【发布时间】:2017-04-07 14:23:21
【问题描述】:
我正在尝试在 sbt 中获取多项目构建中子项目的位置。但我只能获取根项目目录。
lazy val copyToResources = taskKey[Unit]("copies the assembly jar.")
private val rootLocation: File = file(".").getAbsoluteFile
private val subProjectLocation: File = file("sub_project").getAbsoluteFile.getParentFile
lazy val settings = Seq(copyToResources := {
val absPath = subProjectLocation.getAbsolutePath
println(s"rootLocation:$subProjectLocation $absPath, sub-proj-location: ${rootLocation.getAbsolutePath}")
})
输出:
rootLocation:/home/user/projects/workarea/repo /home/vdinakaran/projects/workarea/repo, sub-proj-location: /home/vdinakaran/projects/workarea/repo
rootLocation:/home/user/projects/workarea/repo /home/vdinakaran/projects/workarea/repo, sub-proj-location: /home/vdinakaran/projects/workarea/repo
目录结构:
repo
|-- sub_project
作为一种解决方法,我使用 rootLocation 添加了 sub_project 文件夹。但是为什么 file("sub_project") 没有返回路径呢?
【问题讨论】: