Scala2.9 Android Eclipseプラグイン導入失敗記(その1
こんばんは。
とりあえず以前の投稿の続きとして、
Scala2.9をAndroid Eclipseプラグインに導入して、Scala2.9のコードをそのままAndroidに放りこめないかな?
というのを試してみました。
・・・タイトルから失敗したのはわかるとは思いますが、お付き合いください^^;
とまぁ、ただまずその前提として。
1.そもそも、なんでScalaがAndroidで動くんだっけ?
Androidは下記の図のようにJavaバイトコード(.class)を
Android DalvikVMで動作するAndroid用バイトコード(.dex)に変換して動作させています。
#なので、Dalvik VMはJVMではありません。
で、ScalaをはじめとしたJVM言語はコンパイルによってJavaバイトコード(.class)を生成します。
そのため、JVM言語で作ったコードもAndroidで動くはず。。。というわけです。
こういった前提があるので、基本的には動作するはずなんですよね。
2.どんな環境で実行しよう?
とりあえず、今回の確認は下記の環境で試しています。
3.Scala2.9用Scala-Androidライブラリをビルド
まずはScalaのダウンロードページからScalaのソースをダウンロードします。
Scalaのライブラリの中にAndroid用のライブラリも含まれていて、
それを用いてビルドを行うことでAndroid用のライブラリになる。。。そうです。
下記ページの「Sources (SVN repository snapshot)」からソースをダウンロードします。
解凍するとsrcディレクトリ配下に「android-library」と、「library」というディレクトリがあるはずです。
この「android-library」ディレクトリ配下にはAndroid向けにScalaライブラリ(library)を一部改編したソースが含まれています。
尚、差分があったファイル・・・というか、「android-library」ディレクトリ配下に存在していたファイルは下記の2ファイルでした。
どうせならということで、上記2ファイルの差分比較も行いました。