当我尝试运行SCALA REPL时,我得到以下错误。请注意,我已经看过了这篇关于降级java版本的文章。
sg@IN0D196716 C:Userssg
$ java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
sg@IN0D196716 C:Userssg
$ scala
Exception in thread "main" java.lang.NoSuchMethodError: scala.util.matching.Regex.unapplySeq(Ljava/lang/CharSequence;)Lscala/Option;
at scala.tools.nsc.settings.ScalaVersion$.apply(ScalaVersion.scala:104)
at scala.tools.nsc.settings.ScalaVersion$.apply(ScalaVersion.scala:114)
at scala.tools.nsc.settings.ScalaVersion$.<init>(ScalaVersion.scala:119)
at scala.tools.nsc.settings.ScalaVersion$.<clinit>(ScalaVersion.scala)
at scala.tools.nsc.settings.ScalaSettings$class.$init$(ScalaSettings.scala:138)
at scala.tools.nsc.settings.MutableSettings.<init>(MutableSettings.scala:20)
at scala.tools.nsc.Settings.<init>(Settings.scala:12)
at scala.tools.nsc.GenericRunnerSettings.<init>(GenericRunnerSettings.scala:11)
at scala.tools.nsc.GenericRunnerCommand.<init>(GenericRunnerCommand.scala:18)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:41)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:103)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)
对不起,老兄,这是我的错。
几年前,有人说你应该只能使用正则表达式从字符串(字符序列)中提取。
那是一个很合理的要求。"如果我尝试将正则表达式匹配到甚至不是字符串的东西,请告诉我!"
不幸的是,因为JVM、maven和ivy,你永远不知道你会发现什么向后兼容性问题。
正如你所发现的。
Scala要求你使用相同的"主"版本构建和运行。
这是一个类似的问题,"用户体验"的分歧:
https://issues.scala - lang.org/browse/si - 9380如果你不喜欢带有性别的"dude",如果它带有性别。