こんにちは。 質問させてください。 現在外部ライブラリを利用してAndroidアプリを開発しています。 ここでは仮にHogeFugaライブラリとします。 HogeFugaライブラリを$ant debugでビルドしてHogeFuga.jarを作りました。 そして自分の作成したActivityに以下のようなコードを追加しました public void startHogeFuga() { Intent intent = new Intent(this,com.app.HogeFuga.class); this.startActivity(intent); } ライブラリファイルをlibsにコピーし、これで$ant debugも通り実行可能にはなったのですが、startHogeFugaを呼び出すと java.lang.NoClassDefFoundError: com.app.HogeFuga.R$layout というエラーが出て落ちてしまいます。 元のコードのLayoutデータが見つからないようなエラーでしたので元のコードで落ちてる場所を特定して Log.d( "hogehoge", "layout.main is " + R.layout.main ); というコードを追加したところLog.dが出力されず上記エラーと同様のエラーが発生しました。 なんらかの原因でライブラリ側がR.layoutにアクセスできていないのが原因だと思うのですが原因はどんなことが考えられますでしょうか? 環境: Mac OSX :10.8.2 Build Target : 12 Terminal:iTerm2 備考: ライブラリ側にもR.javaが生成されているのは確認しております。 よろしくおねがいします。
↧