私はScalaを初めて使用しています。しかし、私はスカラ2.9.0と中規模のプログラムを作成しました。今私はScala 2.7.7のためだけに利用可能なオープンソースライブラリを使いたいと思います。旧式のScalaバージョンでのみ利用可能なScalaライブラリの使用
Scala 2.9.0プログラムでこの2.7.7ライブラリを使用するにはが可能ですか?どうしたらいいですか?私はすでにsbtを見ていましたが、本当に成功しませんでした。誰かこんにちはこの例のの例ですか?
私はScalaを初めて使用しています。しかし、私はスカラ2.9.0と中規模のプログラムを作成しました。今私はScala 2.7.7のためだけに利用可能なオープンソースライブラリを使いたいと思います。旧式のScalaバージョンでのみ利用可能なScalaライブラリの使用
Scala 2.9.0プログラムでこの2.7.7ライブラリを使用するにはが可能ですか?どうしたらいいですか?私はすでにsbtを見ていましたが、本当に成功しませんでした。誰かこんにちはこの例のの例ですか?
原則として、2.7.7 jarとカスタムラッパー用のカスタムクラスローダーを使用することができます。しかし、実際には、ライブラリはオープンソースなので、2.9で再コンパイルして必要な変更を行うことはあまりありません。
新しいコレクションライブラリなどのソースの非互換性を含む、2.7と2.8の間にかなり大きな変更がありました。オープンソースライブラリを更新することを選択した場合、この記事は参考になるかもしれません:http://stackoverflow.com/questions/1243794/what-are-the-biggest-differences-between-scala-2-8-and- scala-2-7/2550803#2550803今後、Scalaチームは後方互換性と移行ツールを重視しています。 –
@Kipton Barros - 構造的には変更がかなり大きかったが、ほとんどのポートはかなり簡単で機械的に終わった。 –
Typesafeには、バイナリの非互換性について報告し、解決することを約束する移行マネージャ(http://typesafe.com/technology/migration-manager)の初期プレビューがあります。どうやら初期のプレビューでは非互換性についてしか報告されていませんが、ショットに値するかもしれません。
最良の方法は、メンテナンスされたライブラリを使用するか、コードを更新することです。
2番目のオプションを使用する場合は、フラグ-deprecation
と-Xmigration
を使用してコードをコンパイルします。
これは、バージョン間で変更する必要があることを示します。
あなたはどのライブラリを使用していますか? – soc