![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
こんにちは。
質問させてください。
現在外部ライブラリを利用して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が生成されているのは確認しております。
よろしくおねがいします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
コードがないので状況がいまいちわからないところがあるのですが、com.app.HogeFuga.R$layoutというのを見ると、com.app.HogeFugaパッケージにRクラスがある、といっているように見えます。
これは正しいですか? HogeFugaはクラス名で、パッケージはcom.appのようにも思えるのですが……。すなわち、com.app.R$layoutであるべきのような気もしますが、このあたりのパッケージの整合性はとれているのでしょうか。具体的なコードを見てないので、はずしてたらすみません。
No.1
- 回答日時:
>ライブラリファイルをlibsにコピーし
というところが引っかかっています。
NoClassDefFoundErrorは、JARファイルがCLASSPATHに指定したディレクトリにない場合に発生するエラーです。CLASSPATHに指定されているディレクトリにHogeFuga.jarがないのではないか、と考えます。
以下、ご参考になります。
http://www.atmarkit.co.jp/fjava/rensai3/code_deb …
ありがとうございます。
CLASSPATHが通っているかどうかは確認していませんでしたが、他のjarライブラリは読み込まれていること、ライブラリ側のActivityのonCreateの中に入っていることからクラスパスの問題ではなさそうです。(ご指摘の箇所を確認しクラスパスを通してみましたが特に変化はありませんでした)
onCreateの中でR.layoutにアクセスするところで落ちているようです。
もう少し調べてみたいとおもいます。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- その他(プログラミング・Web制作) ラズパイ上の、pythonのエラーについて 1 2023/04/12 23:27
- Java eclipse実行ができない 2 2022/07/27 04:47
- 音楽・動画 AppleMusicについてです! サブスクに加入しています! 曲を「ライブラリに追加」を押してライ 1 2022/08/19 13:50
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- その他(プログラミング・Web制作) Pythonのライブラリ、randomについて 3 2022/09/20 14:30
- その他(プログラミング・Web制作) プログラミング Python 1 2022/09/28 05:02
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- Visual Basic(VBA) VBAのエラーについて 2 2023/08/02 17:46
- Excel(エクセル) 【マクロ】エラーが発生⇒実行時エラー58既に同名のファイルが存在 5 2022/08/31 10:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipseで、プロジェクト名のと...
-
JBossについて
-
エラー:org.springframeworkが...
-
シンボルが見つかりませんとい...
-
eclipseのエラーについて質問で...
-
eclipseをバージョンアップした...
-
Eclipseで次のエラー箇所にジャ...
-
JSPで意味不明のコンパイルエラー
-
コンパイル時にエラーが出てし...
-
JSPのデバッグの方法がわかりま...
-
構文エラーのやり直しについて
-
Android Studioでエラーが出ます。
-
jspのファイルでエラーが出る
-
メールアドレス入力チェック
-
Buttonを配列とすることができ...
-
Javaのエラーについてです
-
mysqlのgetConnectionでエラー
-
eclipseでのsvn認証エラー回避方法
-
JSPのIF文を教えて下さい
-
BufferdReaderが見つからない?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseで、プロジェクト名のと...
-
タグが閉じてないというエラー...
-
エラー:org.springframeworkが...
-
シンボルが見つかりませんとい...
-
構文エラーのやり直しについて
-
JSP内でString型からint型に変...
-
Javaのエラーについてです
-
tomcat起動時エラー
-
Eclipseで次のエラー箇所にジャ...
-
JSPのIF文を教えて下さい
-
eclipseをバージョンアップした...
-
eclipseでのsvn認証エラー回避方法
-
コンパイル時にエラーが出てし...
-
getParameterについて
-
JAVAでアルファベットを数...
-
「型 ArrayList は総称ではあり...
-
Win32コンソールアプリでnamesp...
-
enum列挙子に使える文字列と使...
-
Eclipseの環境について
-
java eclipse apache tomcat 9....
おすすめ情報