Sbt 没有从当前目录加载项目
Posted
技术标签:
【中文标题】Sbt 没有从当前目录加载项目【英文标题】:Sbt not loading the project from its current directory 【发布时间】:2021-04-24 01:52:54 【问题描述】:当我在包含 build.sbt
文件的 Scala 项目中运行 SBT 时,SBT 似乎忽略它并从不同的文件夹加载项目定义并将当前项目设置到不同的目录 hsperfdata
这很奇怪,因为这用作 Java 性能计数器的一部分,这与我正在尝试做的事情无关。
SBT 也是通过 SDKMAN 安装的,当我尝试指定较低的 SDK 版本 1.2.8 而不是 1.4.6 时,它将始终使用 1.4。 6。 1.2.8 版本也在我的build.properties
文件中指定。
我的堆栈跟踪:
xxxxx@MC-N369748 topic-api % sbt
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
[info] welcome to sbt 1.4.6 (AdoptOpenJDK Java 1.8.0_275)
[info] loading project definition from /private/var/folders/hs/0vkhntfd557c8z8g8b_p7ly00000gp/T/hsperfdata_adu-tp01/project
[info] set current project to hsperfdata_adu-tp01 (in build file:/private/var/folders/hs/0vkhntfd557c8z8g8b_p7ly00000gp/T/hsperfdata_adu-tp01/)
[info] sbt server started at local:///Users/xxxxx/.sbt/1.0/server/143baa47709c908603e6/sock
[info] started sbt server
sbt:hsperfdata_xxxxx>
【问题讨论】:
如果您发布您的build.sbt
文件会很好。否则每个答案都是猜测......
【参考方案1】:
当我们遇到这个问题时,它是由 OS X 限制 java 可执行文件的权限引起的。由于进程无法读取/写入当前目录,sbt 转移到 tmp 文件夹。
在 System Preferences => Security & Privacy 中确保为适当的可执行文件(在这种情况下可能是 java 和 javac)打开了 Full Disk Access 属性,或者将您的源代码移到 OS X 认为受保护的部分文件系统(我们将构建从用户主目录移动到 /code 并且 sbt 工作正常)。
【讨论】:
以上是关于Sbt 没有从当前目录加载项目的主要内容,如果未能解决你的问题,请参考以下文章