sbt 1.2.8在非sudo模式下抛出错误(fedora)

gkn4icbw  于 2021-07-14  发布在  Java
关注(0)|答案(1)|浏览(417)

我已按照以下说明在fedora 29上安装了sbt 1.2.8:https://www.scala-sbt.org/1.0/docs/installing-sbt-on-linux.html
当我运行sbt时(不管是在项目文件夹还是任何其他地方),我得到:

java.lang.NoSuchMethodError: scala.Predef$.refArrayOps([Ljava/lang/Object;)[Ljava/lang/Object;
    at sbt.xMain.run(Main.scala:74)
    at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
    at xsbt.boot.Launch$.withContextLoader(Launch.scala:128)
    at xsbt.boot.Launch$.run(Launch.scala:109)
    at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:35)
    at xsbt.boot.Launch$.launch(Launch.scala:117)
    at xsbt.boot.Launch$.apply(Launch.scala:18)
    at xsbt.boot.Boot$.runImpl(Boot.scala:56)
    at xsbt.boot.Boot$.main(Boot.scala:18)
    at xsbt.boot.Boot.main(Boot.scala)
Error during sbt execution: java.lang.NoSuchMethodError: scala.Predef$.refArrayOps([Ljava/lang/Object;)[Ljava/lang/Object;

使用sudo特权运行sbt解决了这个问题。我也试过从sbt站点下载tgz包并运行
/箱/sbt
但结果相同(non sudo-error/sudo-everything ok)。降级到1.2.7版本也解决了这个问题,但这不是一个长期的解决方案。
你知道发生了什么事吗?

xtupzzrd

xtupzzrd1#

这不是一个特别令人满意的答案,但是我通过删除~/.sbt文件夹解决了这个问题(同样在Fedora29上)
我不知道文件夹里发生了什么,所以最好先备份一下。删除后,我重新运行sbt,文件夹重新出现,但sbt不再崩溃。

相关问题