Tag: Scala 2.7

如何在IntelliJ IDEA中使用Scala(或者:为什么要为Scala获得一个可用的IDE非常困难)?

我最近放弃了尝试在Eclipse中使用Scala(基本的东西,如完成不起作用)。 所以现在我正在尝试IntelliJ。 我不是很远。 我已经能够编辑程序(在语法突出和完成…在!)。 但即使是最简单的“Hello World”,我也无法运行。 这是原来的错误: 斯卡拉签名Predef有错误的版本 预计5.0 发现:4.1在…. scala-library.jar中 但是这是IDEA 9.0.1的昨天。 见下文… UPDATE 今天,我卸载了IntelliJ 9.0.1,并安装了9.0.2的早期可用性,以及Scala插件的4/14稳定版本。 然后我通过向导从头开始设置一个项目: 新的项目从零开始 JDK是1.6.20 接受默认(项目)而不是全局/模块 接受下载Scala 2.8.0beta1到项目的lib文件夹 创build一个新的类: 对象你好{ def main(args:Array [String]){ println(“hello:”+ args); } } 对于我的努力,我现在有一个全新的错误:) 这里是: Scalac内部错误:类java.lang.ClassNotFoundException [java.net.URLClassLoader $ 1.run(URLClassLoader.java:202),java.security.AccessController.doPrivileged(Native Method),java.net.URLClassLoader.findClass(URLClassLoader.java :190),java.lang.ClassLoader.loadClass(ClassLoader.java:307),sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:301),java.lang.ClassLoader.loadClass(ClassLoader.java:248) ,java.lang.Class.forName0(Native Method),java.lang.Class.forName(Class.java:169),org.jetbrains.plugins.scala.compiler.rt.ScalacRunner.main(ScalacRunner.java:72) ] 最终更新 我卸载了9.0.2 EA并重新安装了9.0.1,但是这一次使用了Scala的2.7.3版本,而不是默认的2.7.6,因为2.7.3是IntelliJ网站屏幕截图中显示的我猜屏幕截图certificate他们实际上testing了这个版本!)。 现在一切正常!

将Java集合转换为Scala集合

相关的堆栈溢出问题斯卡拉相当于新的HashSet(集合) ,我如何将一个Java集合( java.util.List说)转换成一个Scala集合List ? 我实际上正在尝试将Java API调用转换为Spring的 SimpleJdbcTemplate ,它将java.util.List<T>返回到Scala不可变的HashSet 。 举个例子: val l: java.util.List[String] = javaApi.query( … ) val s: HashSet[String] = //make a set from l 这似乎工作。 批评是受欢迎的! import scala.collection.immutable.Set import scala.collection.jcl.Buffer val s: scala.collection.Set[String] = Set(Buffer(javaApi.query( … ) ) : _ *)