0

こんにちは、javac コンパイラーと dx コンバーターを Android に移植することを計画しています。

私の考えは、人々がAndroidデバイスでJavaソースコードをコンパイルし、おそらく同じAndroidデバイスでAndroidアプリを作成できるようにアプリを作成することです...

これは可能ですか?

4

1 に答える 1

3

ほとんどの人はそれを些細なことだとは思わないでしょう。

javacおよびdxを移植する必要があるものとしてリストします。それらは確かに要件です。のARMポートを作成する必要がありますjavac(およびそれが使用する可能性のあるすべてのシステムライブラリで、Androidにはありません)。dxまた、Java VM 用に記述されているため、Dalvik VM で実行されるのバージョンを作成する必要があります。

それを超えると、少なくとも次のように移植する必要があります。

  • aaptAndroid にはない、使用する可能性のあるすべてのシステム ライブラリ
  • aidlAndroid にはない、使用する可能性のあるすべてのシステム ライブラリ
  • LLVM コンパイラ
  • Ant (Java で書かれていますが、Java VM 用であり、変更なしでは Dalvik VM で実行されない可能性が非常に高いです)
  • ビルド プロセスで使用される、インポートされた Ant タスクのセット全体 (これも Java VM 用に記述されています)
  • ビルド プロセスの一部としてこれらの Ant タスクで使用されるその他の Java SDK ツール (例: jarsignerkeytool)

次に、Ant タスクを呼び出してビルドを実行できる Android アプリを作成する必要があります。ただし、Android シェルはかなり制限されており、このプロセスに独自の障害をもたらす可能性があることを念頭に置いてください。このようなアプリでは、結果を取得してユーザーに報告する必要がありstdoutますstderr(コンパイル エラーなど)。必要に応じて十分な既存のテキスト エディターがない限り、独自のミニチュア IDE を展開する必要がある可能性もあります。

これには、100エンジニア月をはるかに超える時間がかかると見積もっています。したがって、あなたの会社がそのプロジェクトのためにかなりの規模のチームを任命した場合、1年ほどで完了する可能性があります.

于 2011-12-31T15:16:04.710 に答える