2010-11-07 30 views
0

昨晚我安装了scala 2.8.0,我似乎遇到了一些问题让它运行。如果我在命令提示符下键入scala,它会出现以下内容:Windows 7上的Scala 2.8.0问题

> scala 
Exception in thread "main" java.lang.NoSuchMethodError: scala.collection.mutable.ListBuffer.toList()Lscala/collection/immutable/List; 
     at scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:399) 
     at scala.collection.mutable.ArrayOps.toList(ArrayOps.scala:34) 
     at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:33) 
     at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala) 

任何人有什么想法?我在Windows 7专业版中使用Oracle JRE 1.6.0_21

回答

0

原来发生这个问题,因为我把SBT-launch.jar在我的Scala安装的lib目录。一旦我把它移动到另一个目录scala工作正常。

0

您是否已将SCALA_HOME环境变量设置为指向正确的目录?

+0

它被设置为c:\ scala,它是顶级目录。它有bin,doc,lib,meta,misc和src目录。我猜这是指向正确的地方? – Ceilingfish 2010-11-07 13:58:10

+0

是的,设置正确。 – Barend 2010-11-07 14:00:41

0

您是否安装了旧版本?如果这是你的还是路径上则可能造成的问题...

编辑

你能粘贴您的PATH和CLASSPATH环境变量的内容是什么?如果他们在大方面也许使用pastie或pastebin。

你也应该更新到Java 1.6.0_22如果可能的话,由于这种错误,这是目前在更新21:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6969236

+0

我已安装。这会影响到什么吗? – Ceilingfish 2010-11-07 17:44:56

+1

SBT将下载并使用它自己的scala-compiler和scala-library的副本。所以如果SBT工作但运行“原始”scalac没有,那么你很有可能遇到你的路径问题。 – 2010-11-07 18:26:48