2013-03-28 17 views
19

私は時間を使うアプリを作っています。私はジョーダの時間を使うことに決めました。私はアプリにjoda時間を追加しようとしています。私は.jarファイルをlibsに追加する経験はありません。私はthese steps(下を見てください)をたどったので、私は考えました。私のプロジェクトがエラーを示していないが、私は簡単なテストを実行する場合:DateTime test = new DateTime();を私は近いし、次のエラー力を得る:ジョーダ時間を追加する

Could not find class 'org.joda.time.DateTime', referenced from method xxxx 
java.lang.NoClassDefFoundError: org.joda.time.DateTime  

はこれらは私が続く手順は次のとおりです。

  1. は、あなたの作成しますEclipseのアンドロイドプロジェクト。
  2. ダウンロードJoda Time
  3. Eclipseでは、パッケージエクスプローラでプロジェクトを探して右クリックし、New -> Folder -> libsと呼んでください。 注:私はすでにlibs
  4. コピー(または)という名前のフォルダをドラッグ&を新たに作成したフォルダにlibsjoda-time-2.1.jarを落としていたので、私はこれをしませんでした。
  5. プロジェクトをもう一度右クリックして(パッケージエクスプローラで)、Properties -> Java Build Path -> Libraries -> Add Jars -> joda-time-2.1.jarをクリックします。

今、あなたは、このコードをテストすることができます。

DateTime test = new DateTime(); 

インポートした後:

import org.joda.time.DateTime; 
+1

プロジェクトをクリーンアップしてビルドします。 – rajeshwaran

+0

jodatimeの使用を開始するには、クラスファイルの先頭に関連するimportステートメントを追加します(たとえば、DateTimeと入力してからCTRL + SPACEを入力するとeclipseはインポートを追加します) – rajeshwaran

+0

Right。適切にインポートされます。 –

答えて

20

をそれだけで行うことはありませんジョダjarファイルを参照して、Androidのプロジェクトですので。あなたはこのように行うことができますあなたのAPKと一緒にそのjarファイルをバンドルする必要があります: -

  1. プロパティ - > Javaビルド・パス - >joda-time-*-*.jarとクリックで注文&エクスポート

  2. チェックOK。あなたは終わった。


説明:単独のjarファイルを参照するだけのEclipse(またはその他のIDE)でのコンパイルの問題を解決しますが、APKが「ジョダ時間」のjarファイルウォンを作成していますあなたの "apk"と一緒にエクスポート/バンドルされます。それがNoClassDefFoundErrorをスローする理由です。

しかし、あなたは注文&に書き出しをジョダ時jarをチェックするとき、それは瓶も、それが作成されるたびに、あなたの「APK」と一緒に/内部バンドルされていることを確認します。

+4

ハレルヤ!それはそれをした!なぜ私はアンドロイドのためにそれをする必要があるのか​​説明できますか? –

関連する問題