Java 添加Joda时间
我正在构建一个使用时间的应用程序。我决定利用乔达的时间。我正在尝试将joda time添加到我的应用程序中。我没有向libs添加Java 添加Joda时间,java,android,jodatime,noclassdeffounderror,libs,Java,Android,Jodatime,Noclassdeffounderror,Libs,我正在构建一个使用时间的应用程序。我决定利用乔达的时间。我正在尝试将joda time添加到我的应用程序中。我没有向libs添加.jar文件的经验。我跟着(见下图),或者我是这么想的。我的项目没有显示错误,但是当我运行一个简单的测试时:DateTime test=newdatetime()我得到一个强制关闭和以下错误: Could not find class 'org.joda.time.DateTime', referenced from method xxxx java.lang.No
.jar
文件的经验。我跟着(见下图),或者我是这么想的。我的项目没有显示错误,但是当我运行一个简单的测试时:DateTime test=newdatetime()代码>我得到一个强制关闭和以下错误:
Could not find class 'org.joda.time.DateTime', referenced from method xxxx
java.lang.NoClassDefFoundError: org.joda.time.DateTime
以下是我遵循的步骤:
在eclipse中创建您的android项目
下载
在Eclipse中,在PackageExplorer中查找您的项目,右键单击它,然后将其命名为New->Folder->libs
注意:我没有这样做,因为我已经有一个名为libs
复制(或)将joda-time-2.1.jar
拖放到新创建的libs
文件夹中
再次右键单击您的项目(在包资源管理器中),然后Properties->Java构建路径->库->添加jar->joda-time-2.1.jar
李>
现在,您可以使用以下代码进行测试:
DateTime test = new DateTime();
导入后:
import org.joda.time.DateTime;
因为它是一个Android项目,仅仅引用Joda jar文件是不行的。您需要将该jar文件与apk捆绑在一起,具体操作如下:-
属性->Java构建路径->订单和导出
检查joda time-*-*.jar
并单击Ok。你完了
解释:单独引用jar只会解决Eclipse(或任何其他IDE)中的编译问题,但创建apk时,“joda time”jar文件不会与“apk”一起导出/绑定。这就是它抛出NoClassDefFoundError的原因
但是,当您在Order&Export中检查joda time jar时,它将确保jar在创建时也与“apk”捆绑在一起。清理项目和构建。您可以通过在类文件开头添加相关的导入语句来开始使用jodatime(或者只是键入DateTime,然后CTRL+SPACE和eclipse应该为您添加导入)对。它被正确导入了。哈利路亚!!成功了!您能解释为什么我需要为android这样做吗?