ant を使用してライブラリ内の jar を使用してプロジェクトをビルドしたいのですが、の生成build.xml
は成功していant release
ますが、実行するとコンパイル時にエラーが発生します。
[javac] E:\Project\Pascal\Source\workspace\xxx\src\com\xxx\xxx\uti
ls\CommonUtil.java:1267: cannot find symbol
[javac] symbol : method setOTAMode()
[javac] location: class android.os.RecoverySystem
[javac] RecoverySystem.setOTAMode();
^
しかし、日食では、正常にコンパイルできます。build.xmlにjarを手動で追加する必要がありますが、base_rules.xmlで見つけたように、Android antがlibsディレクトリのjarを処理すると言われました
<property name="jar.libs.dir" value="libs" />
<property name="jar.libs.absolute.dir" location="${jar.libs.dir}" />
<property name="native.libs.absolute.dir" location="libs" /
では、どうすればこれを修正できますか。
編集:私のアプリは、メソッドを持つ指定された BSP 用に開発されていますがsetOTAMode
、標準の SDK で開発したため、正常にコンパイルするために、BSP に同じパッケージ名を持つ jar を追加してandroid.os.RecoverySystem
、Java コンパイラを偽造します。次に、BSP でアプリを実行すると、BSP の実際のメソッドが呼び出されます。
Soandroid.os.RecoverySystem
はjarで定義され、setOTAMode
宣言されています。