Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
=== NoSuchMethodException === 例えば、MatchErrorが発生するはずなのに、なぜかNoSuchMethodExceptionが発生する場合がある。 これは、例えばScala2.8でコンパイルしたバイナリを2.9で動作させた場合などに発生する。 Scalaはバイナリ互換性が無く、メソッドのシグニチャが変わってしまうため、このエラーが発生するようだ。 Scala2.9からはバイナリ互換性確保のための方策が導入された模様。 * 参考:[[http://d.hatena.ne.jp/yuroyoro/20110525/1306315628|Scala2.9から導入されたバイナリ互換性確保のためのbridgeアノテーションについて調べた]] |
|
Line 4: | Line 17: |
これも同じらしい。バイナリ非互換性のため |
バイナリ非互換性
NoSuchMethodException
例えば、MatchErrorが発生するはずなのに、なぜかNoSuchMethodExceptionが発生する場合がある。 これは、例えばScala2.8でコンパイルしたバイナリを2.9で動作させた場合などに発生する。 Scalaはバイナリ互換性が無く、メソッドのシグニチャが変わってしまうため、このエラーが発生するようだ。
Scala2.9からはバイナリ互換性確保のための方策が導入された模様。
class file needed by Message is missing. [error] reference type Serializable of package scala refers to nonexisting symbol
これも同じらしい。バイナリ非互換性のため