添加乔达时间
问题内容:
我正在构建一个使用时间的应用程序。我决定用乔达时间。我正在尝试将joda时间添加到我的应用中。我没有将.jar
文件添加到库的经验。我遵循了这些步骤(请参阅底部),所以我想。我的项目没有显示任何错误,但是当我运行一个简单的测试时:DateTime test = new DateTime();
我被强制关闭,并出现以下错误:
Could not find class 'org.joda.time.DateTime', referenced from method xxxx
java.lang.NoClassDefFoundError: org.joda.time.DateTime
这些是我遵循的步骤:
- 在eclipse中创建您的android项目。
- 下载Joda时间
- 在Eclipse中,在Package Explorer中找到您的项目,然后右键单击它,然后调用它
New -> Folder -> libs
。 注意:我没有这样做,因为我已经有一个名为libs
- 复制(或)并将其拖放
joda-time-2.1.jar
到新创建的libs
文件夹中。 - 再次右键单击您的项目(在资源管理器中),然后单击
Properties -> Java Build Path -> Libraries -> Add Jars -> joda-time-2.1.jar
。
现在您可以使用以下代码进行测试:
DateTime test = new DateTime();
导入后:
import org.joda.time.DateTime;
问题答案:
由于这是一个Android项目,因此仅引用Joda jar文件将不会执行。您需要将该jar文件与apk捆绑在一起,方法如下:-
-
属性-> Java构建路径->订单和导出
-
选中,
joda-time-*-*.jar
然后单击 确定 。你完成了。
说明: 仅引用jar只能解决Eclipse(或任何其他IDE)中的编译问题,但是创建 apk 时,“ joda-time” jar文件将不会与“
apk”一起导出/捆绑。这就是为什么它引发 NoClassDefFoundError 的原因。
但是,当您在 Order&Export中 检查joda-time jar时,将确保该jar在创建时也与您的“ apk”一起捆绑在其中。