Scala 格式化简单字符串,但'java.lang.NoSuchMethodError'`

Scala 格式化简单字符串,但'java.lang.NoSuchMethodError'`,scala,string-formatting,Scala,String Formatting,我使用的是Scala 2.9.2 运行Scala并测试一个简单的代码,此代码是…OK: ... val title = "Hashing file (%s)..." format sizeToStr(file.length) 但我不明白什么是什么,当我将代码放入一个简单的应用程序中时,编译OK,在运行时它抛出以下代码: java.lang.NoSuchMethodError: scala.Predef$.augmentString(Ljava/lang/String;)Lscala/colle

我使用的是Scala 2.9.2

运行Scala并测试一个简单的代码,此代码是…OK:

...
val title = "Hashing file (%s)..." format sizeToStr(file.length)
但我不明白什么是什么,当我将代码放入一个简单的应用程序中时,编译OK,在运行时它抛出以下代码:

java.lang.NoSuchMethodError: scala.Predef$.augmentString(Ljava/lang/String;)Lscala/collection/immutable/StringOps;
        at group.pals.penguin.app.shasher.Shasher$.calcHash(shasher.scala:119)
        at group.pals.penguin.app.shasher.Shasher$.main(shasher.scala:76)
        at group.pals.penguin.app.shasher.Shasher.main(shasher.scala)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at scala.tools.nsc.util.ScalaClassLoader$$anonfun$run$1.apply(ScalaClassLoader.scala:71)
        at scala.tools.nsc.util.ScalaClassLoader$class.asContext(ScalaClassLoader.scala:31)
        at scala.tools.nsc.util.ScalaClassLoader$URLClassLoader.asContext(ScalaClassLoader.scala:139)
        at scala.tools.nsc.util.ScalaClassLoader$class.run(ScalaClassLoader.scala:71)
        at scala.tools.nsc.util.ScalaClassLoader$URLClassLoader.run(ScalaClassLoader.scala:139)
        at scala.tools.nsc.CommonRunner$class.run(ObjectRunner.scala:28)
        at scala.tools.nsc.JarRunner$.run(MainGenericRunner.scala:16)
        at scala.tools.nsc.CommonRunner$class.runAndCatch(ObjectRunner.scala:35)
        at scala.tools.nsc.JarRunner$.runAndCatch(MainGenericRunner.scala:16)
        at scala.tools.nsc.JarRunner$.runJar(MainGenericRunner.scala:28)
        at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:78)
        at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:96)
        at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:105)
        at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)

你能帮我一下吗?谢谢。

您似乎是根据运行时使用的标准库的不同版本进行编译。

您似乎是根据运行时使用的标准库的不同版本进行编译runtime@KimStebel谢谢,这是一个线索,我正试图通过这种方式解决它…@KimStebel你帮我节省了几个小时!实际上,我是为
2.9.2
编译的,并在
2.10.0-RC1
下运行.jar文件。你能把它贴出来作为我的答案吗?再次感谢:-)谢谢。我正在编译
2.9.2
,并在
2.10.0-RC1
下运行.jar文件。解决方案:我正在使用,因此在根目录下创建一个新文件
build.sbt
,其中包含此
scalaVersion:=“2.10.0-RC1”