我正试图通过创造性Scala指南来学习Scala。但是,当我试图在终端上运行第12页下面的命令时,会出现一个错误。
现在切换到我们刚刚创建的目录并运行SBT。 cd创作-scala-模板./sbt.sh
我得到的错误是:
Unrecognized VM option 'CMSClassUnloadingEnabled'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
看来问题出在sbt上了?
我试着按照另一个问题中的顶部注释,即转到文件夹/usr/local/etc/sbtopts
并进行一些更改,但是我的文件夹/usr/local/
是空的。
有人能告诉我我可能做错了什么吗?
通过做java -version
,我得到:
openjdk version "18.0.2" 2022-07-19
OpenJDK Runtime Environment (build 18.0.2+9-61)
OpenJDK 64-Bit Server VM (build 18.0.2+9-61, mixed mode, sharing)
sbt -version
让我:
sbt version in this project: 1.7.1
sbt script version: 1.7.1
在Tim的解决方案之后,我现在在运行./sbt.sh
时得到了一个不同的错误。有人知道怎么解决这个问题吗?
java.lang.UnsupportedOperationException: The Security Manager is deprecated and will be removed in a future release
at java.base/java.lang.System.setSecurityManager(System.java:416)
at sbt.TrapExit$.installManager(TrapExit.scala:53)
at sbt.StandardMain$.runManaged(Main.scala:128)
at sbt.xMain.run(Main.scala:89)
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.UnsupportedOperationException: The Security Manager is deprecated and will be removed in a future release
发布于 2022-08-27 12:28:53
在本例中,选项是在模板项目中包含的sbt.sh
文件本身中定义的。此选项在Java 14及更高版本中被删除,您正在使用的指南是用早期的Java版本开发的。
您可以编辑此文件并从其中删除文本-XX:+CMSClassUnloadingEnabled
。
到Java 18时,该文件中的所有其他选项仍然被支持。
生成的命令如下所示:
java -Xmx3g -Xms1g -XX:+TieredCompilation -XX:ReservedCodeCacheSize=256m -XX:+UseNUMA -XX:+UseParallelGC -jar sbt-launch.jar "$@"
https://stackoverflow.com/questions/73510384
复制相似问题