什么是Scala 2.10与2.9不兼容以及如何处理它们?
特别是核心库,但是流行库的任何问题都可能很有趣。
赞赏官方文件的链接。
答案 0 :(得分:2)
不确定错误是否计数,但是现在已经修复了issue with type inference and existential types(但修复程序尚未发布,因此当前版本2.10.0中的问题仍然存在)
这是SI-5330。在问题的描述中(以及各种注释中),有一些代码用于在scala 2.9中编译,现在无法在2.10中编译。
答案 1 :(得分:1)
找到了其中几个:
迁移到Akka:
http://docs.scala-lang.org/overviews/core/actors-migration-guide.html
或包括旧的。例如。使用maven:
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-actors</artifactId>
<version>2.10.0</version>
</dependency>
不要继承案例类。如果您使用案例类进行匹配,请使用提取器模式:
http://www.scala-lang.org/node/112
List
移除了一些已弃用的方法,包括:-
,--
,first
,sort
... 请参阅:
http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.List
http://www.scala-lang.org/api/2.9.2/index.html#scala.collection.immutable.List
答案 2 :(得分:1)
我认为总的来说它们不是源代码不兼容的。存在一些差异,特别是与存在性和模式匹配有关 - 一些是由于2.10.0上的新错误,一些是由于2.9.2上的旧错误得到修复。
当然,很多被弃用的东西都被删除了,但这应该不用说了。